Программирование под Win32


Программирование для Windows с помощью библиотеки объектов OWL - стр. 53



Диалоговые окна                                                                                                                 255

"будут продемонстрированы в последующих примерах.",

-1,9,10,202,47, ss_center|not ws_group

ICON   "MyIcon",-1,30,77,16,16

}

//Файл 28-1.cpp

#include <owl\framewin.h>

#include <owl\dialog.h>

#include  "28-1.h"

/*Класс приложения,   производный oт Tapplication*/

class MyApp:public  TApplication{

public:

void InitMainWindow();//Замещаем функцию InitMainWindow

};

/*Класс главного окна, производный от

TframeWindow*/ class MyWindow:public TFrameWindow{

HICON hIcon;//Дескриптор нашего значка - данное-член класса MyWindow

public:

MyWindow(TWindow*parent,char far*title);

void GetWindowClass(WNDCLASS&);//Замещаем ради установки нашего значка

void CmAbout();//Функция отклика на пункт "О программе"

DECLARE_RESPONSE_TABLE(MyWindow);

); /*Таблица откликов класса MyWindow* /

DEFINE_RESPONSE_TABLE1(MyWindow,TFrameWindow)

EV_COMMAND(CM_ABOUT,CmAbout), END_RESPONSE_TABLE; /*Конструктор главного окна*/ MyWindow::MyWindow(TWindow*parent,char far*title):TFrameWindow(parent,title){

AssignMenu("MainMenu");

hIcon=GetApplication()->TModule::LoadIcon("MyIcon");

}

/* Функции-члены класса MyWindow*/ void MyWindow::CmAbout (){

TDialog* myDlg=new TDialog(this,About);

myDlg->Execute();

} void MyWindow::GetWindowClass(WNDCLASS&wc){

TWindow::GetWindowClass(wc);//Вызываем исходную функцию GetWindowClass

we.hIcon=hIcon;//Устанавливаем наш значок в структуре NNDCLASS

} void MyApp::InitMainWindow(void){

EnableBWCC();//Чтобы приложение работало вне среды Borland C++

SetMainWindow(new MyWindow(0,"Программа 28-1"));

}

/*Главная функция приложения OwlMain*/ int OwlMain(int,char*[]){

return MyApp() . Run () ;

}

Так же, как и при процедурном программировании с помощью вызовов функций API Windows, включение диалоговых окон в OWL-приложение требует, прежде всего, их описания в файле ресурсов. Диалог для данного примера готовился не в текстовом редакторе, а в программе Resource Workshop, что позволило придать диалогу "стиль Borland", не обременяя себя поиском ключевых слов ("BorBtn", "BorShade", BSS_HDIP и др.), описывающих различные оформительские элементы диалогового окна. Применение к диалогу стиля Borland определяется строкой




Начало  Назад  Вперед



Книжный магазин