Александр Фролов - Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2

Тут можно читать онлайн Александр Фролов - Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2 - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Диалог-МИФИ, год 1996. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2
  • Автор:
  • Жанр:
  • Издательство:
    Диалог-МИФИ
  • Год:
    1996
  • Город:
    Москва
  • ISBN:
    нет данных
  • Рейтинг:
    3.89/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Александр Фролов - Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2 краткое содержание

Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2 - описание и краткое содержание, автор Александр Фролов, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга посвящена программированию в среде Microsoft Visual C++ с использованием библиотеки классов MFC. В ней мы расскажем о разработке приложений с многооконным пользовательским интерфейсом, использовании классов MFC для создания меню, панелей управления и состояния. Рассмотрим возможности повторного использования программного кода, предоставляемые Microsoft Visual C++. Отдельную главу книги мы посвятили разработке приложений, взаимодействующих с базами данных через драйвера ODBC.

Книга предназначена для всех, кто интересуется программированием в среде операционных систем Windows 95 и Windows NT версий 3.51 и 4.0.

Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2 - читать онлайн бесплатно полную версию (весь текст целиком)

Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2 - читать книгу онлайн бесплатно, автор Александр Фролов
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

else if(nID == ID_WORK_DIRECT_SUB) {

// Изменяем внешний вид индикатора

m_wndStatusBar.SetPaneStyle(nIndex, SBPS_POPOUT);

// Выводим текст SUB

m_wndStatusBar.SetPaneText(nIndex, "SUB");

}

return TRUE;

}

//============================================================

// Метод OnMenuDisableADD_SUB класса OnMenuDisableADD_SUB

//============================================================

void CStateWindow::OnMenuDisableADD_SUB() {

// Определяем индекс индикатора ID_INDICATOR_ADD

int nIndex = m_wndStatusBar.CommandToIndex(ID_INDICATOR_ADD);

// Блокируем индикатор

m_wndStatusBar.SetPaneStyle(nIndex, SBPS_DISABLED);

}

//============================================================

// Метод OnUpdateTEXT класса CStateWindow

//============================================================

void CStateWindow::OnMenuSwitchTEXT() {

// Изменяем состояние флага bIndicatorTEXT,

// который используется методом OnUpdateTEXT

bIndicatorTEXT = !bIndicatorTEXT;

}

//============================================================

// Метод OnMenuExit класса CStateWindow

//============================================================

void CStateWindow::OnMenuExit() {

// Завершаем приложение

DestroyWindow();

return;

}

//============================================================

// Метод OnCreate класса CStateWindow

// Вызывается во время создания окна приложения

//============================================================

int CStateWindow::OnCreate(LPCREATESTRUCT lpCreateStruct) {

// Вызываем метод OnCreate базового класса

if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1;

// Создаем панель состояния

if (!m_wndStatusBar.Create(this)) {

// Ошибка при создании панели состояния

TRACE0("Failed to create status bar\n");

return -1;

}

// Отображаем индикаторы панели состояния

if (!m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT))) {

// Ошибка при установке индикаторов

TRACE0("Failed to set indicators\n");

return -1;

}

// Устанавливаем характеристики индикатора

// ID_INDICATOR_PROGRESS

m_wndStatusBar.SetPaneInfo(m_wndStatusBar.CommandToIndex(ID_INDICATOR_PROGRESS), ID_INDICATOR_PROGRESS,

SBPS_DISABLED | // Текст не отображается

SBPS_NOBORDERS, // Рамка вокруг индикатора отсутствует

150); // Ширина индикатора 150 пикселов

return 0;

}

//============================================================

// Метод OnUpdateTEXT класса CStateWindow

// Обрабатывает сообщение ON_UPDATE_COMMAND_UI

// от индикатора ID_INDICATOR_TEXT

//============================================================

void CStateWindow::OnUpdateTEXT(CCmdUI* pCmdUI) {

// В зависимости от состояния флага bIndicatorTEXT

// отображаем в индикаторе ID_INDICATOR_TEXT

// строку TEXT или PIC

if (bIndicatorTEXT) pCmdUI->SetText("TEXT"); // отображаем строку TEXT

else pCmdUI->SetText("PIC"); // отображаем строку PIC

// Разрешаем отображение текста в индикаторе

pCmdUI->Enable();

}

Создайте новый файл ресурсов и включите его в проект под именем Status.rc. Включите в него меню, присвоив ему идентификатор IDR_MENU. Введите строки меню IDR_MENU в соответствии с представленным нами файлом ресурсов (листинг 3.14). Для всех строк меню введите их описания. Они будут записаны в файл ресурсов как строковые ресурсы, имеющие одинаковые идентификаторы со строками меню.

Добавьте в файл ресурсов строку Ready, выбрав для нее идентификатор AFX_IDS_IDLEMESSAGE. Эта строка будет отображаться в панели состояния во время “бездействия” приложения.

Добавьте в файл ресурсов строки, представляющие индикаторы панели состояния: ID_INDICATOR_ADD, ID_INDICATOR_PROGRESS и ID_INDICATOR_TEXT.

Листинг 3.14. Файл Status.rc

//Microsoft Developer Studio generated resource script.

//

#include "resource.h"

#define APSTUDIO_READONLY_SYMBOLS

//////////////////////////////////////////////////////////////

//

// Generated from the TEXTINCLUDE 2 resource.

//

#include "afxres.h"

//////////////////////////////////////////////////////////////

#undef APSTUDIO_READONLY_SYMBOLS

//////////////////////////////////////////////////////////////

// Russian resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)

#ifdef _WIN32

LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT

#pragma code_page(1251)

#endif //_WIN32

#ifdef APSTUDIO_INVOKED

//////////////////////////////////////////////////////////////

//

// TEXTINCLUDE

//

1 TEXTINCLUDE DISCARDABLE

BEGIN

"resource.h\0"

END

2 TEXTINCLUDE DISCARDABLE

BEGIN

"#include ""afxres.h""\r\n"

"\0"

END

3 TEXTINCLUDE DISCARDABLE

BEGIN

"\r\n"

"\0"

END

#endif // APSTUDIO_INVOKED

//////////////////////////////////////////////////////////////

//

// Menu

//

IDR_MENU MENU DISCARDABLE

BEGIN

POPUP "Work"

BEGIN

MENUITEM "Process", ID_WORK_PROCESS

MENUITEM "Direct set ADD", ID_WORK_DIRECT_ADD

MENUITEM "Direct set SUB", ID_WORK_DIRECT_SUB

MENUITEM "Disable ADD SUB", ID_WORK_DISABLE_ADDSUB

MENUITEM "Switch TEXT", ID_WORK_ON_SWITCH_TEXT

MENUITEM SEPARATOR

MENUITEM "Exit", ID_WORK_EXIT

END

END

//////////////////////////////////////////////////////////////

//

// String Table

//

STRINGTABLE DISCARDABLE

BEGIN

ID_INDICATOR_ADD "START"

END

STRINGTABLE DISCARDABLE

BEGIN

ID_INDICATOR_PROGRESS "neve display"

ID_INDICATOR_TEXT "TEXT"

END

STRINGTABLE DISCARDABLE

BEGIN

ID_WORK_PROCESS "Display and play progress bar"

ID_WORK_DIRECT_ADD "Set indicator ID_INDICATOR_ADD to ADD"

ID_WORK_ON_SWITCH_TEXT "Switch text in indicator ID_INDICATOR_TEXT"

ID_WORK_DIRECT_SUB "Set indicator ID_INDICATOR_ADD to SUB"

ID_WORK_DISABLE_ADDSUB "Disable indicator ID_INDICATOR_ADD"

ID_WORK_EXIT "Exit application"

END

STRINGTABLE DISCARDABLE

BEGIN

AFX_IDS_IDLEMESSAGE "Ready"

END

#endif // Russian resources

//////////////////////////////////////////////////////////////

#ifndef APSTUDIO_INVOKED

//////////////////////////////////////////////////////////////

//

// Generated from the TEXTINCLUDE 3 resource.

//

//////////////////////////////////////////////////////////////

#endif // not APSTUDIO_INVOKED

Идентификаторы ресурсов приложения Status определены в файле resource.h. Этот файл создается автоматически редактором ресурсов Microsoft Visual C++. Исходный текст файла resource.h представлен в листинге 3.15.

Листинг 3.15. Файл resource.h

//{{NO_DEPENDENCIES}}

// Microsoft Developer Studio generated include file.

// Used by Status.rc

//

#define ID_INDICATOR_ADD 1

#define IDR_MENU 101

#define ID_INDICATOR_PROGRESS 102

#define ID_INDICATOR_TEXT 103

#define ID_WORK_PROCESS 40001

#define ID_WORK_DIRECT_ADD 40006

#define ID_WORK_ON_SWITCH_TEXT 40007

#define ID_WORK_DIRECT_SUB 40008

#define ID_WORK_DISABLE_ADDSUB 40009

#define ID_WORK_EXIT 40010

#define ID_TIMER_CHECK 0xE001

// Next default values for new objects

//

#ifdef APSTUDIO_INVOKED

#ifndef APSTUDIO_READONLY_SYMBOLS

#define _APS_NEXT_RESOURCE_VALUE 106

#define _APS_NEXT_COMMAND_VALUE 40011

#define _APS_NEXT_CONTROL_VALUE 1000

#define _APS_NEXT_SYMED_VALUE 104

#endif

#endif

Постройте приложение Status и запустите его. На экране появится главное окно приложения, в нижней части которого отображается панель состояния (рис. 3.23).

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Александр Фролов читать все книги автора по порядку

Александр Фролов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2 отзывы


Отзывы читателей о книге Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2, автор: Александр Фролов. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x