Программирование >>  Программирование на языке c++ 

1 ... 144 145 146 [ 147 ] 148 149 150 ... 159


int number of children = 0; число детей int child number = 0; номер ребенка class my app : public TApplication { public:

fny-appO : TApplicationO {} protected: virtual void InitMainWindow(void); }; class my child : public TMDIChild { public:

TEdit* my text; my child{TMDICIient& parent); protected: virtual BOOL CanClose(void); }; my child::my child(TMDIClient& parent) : TMDIChild(parent), TFrameWindow(&parent), TWindow(&parent) { char str[50],

caption[40] = I am child , ss[3];

wsprintf(str, Number of children = %d; ,number of children); Attr.Style 1= WS VSCROLL WS HSCROLL; Scroller = new TScroller(this, 200, 15, 10,50); wsprintf (ss, %d ,child number); Title = fstrdup(strcat(caption,ss));

my text == new TEdit(this, ID TEXT EDIT,str,10,10,300,200,0,

TRUE);

my text -> Attr.Style &= ~WS BORDER; my text -> Attr.Style &= ~WS VSCROLL; my text -> Attr.Style &= ~WS HSCROLL;

BOOL my child::CanClose() { if (MessageBoxCDo you want to close? , ??? , MB YESNO) == IDYES) { -number of children;



return TRUE;} else return FALSE; } class my client : public TMDIClient { public:

my client() : TMDIClient() {} protected: virtual TMDIChild* lnitChild(); }; TMDIChild* my client::lnitChild(void) { TMDIChild* child; ++number of children; +-l-child number; child = new my child(*this);

child -> Setlcon(GetModule(),llC1-1+number of children); return child;

void my app :: InitMainWindow(void) { MainWindow = new TMDIFrame( MDI ,

TReslD{lDM COMMANDS),*new my client); } int OwlMain{int, char**) { return my app().Run(); }

В программе был использован следующий конструктор класса TMDIFrame:

TMDIFrame(const char far *title, TResID menuResld,

TMDIClient &clientWnd = *new TMDIClient, TModule* module = 0);

Oh строит MDI фрейм с заданным заголовком (title = MDI ) и ресурсом (menuResld = TResID(IDM COMMANDS)). Третий параметр определяет объект, который обслуживает рабочую область.

Файл ресурса для нашей программы может быть представлен в таком виде:

#include mdi2.h #include <owl\mdi.rh> #include <windows.h>



#include <owl\window.rh> IDM COMMANDS MENU { POPUP &MDi Children

{ здесь используются заданные в системе имена пунктов меню

MENUITEM C&reate , CM CREATECHILD MENUITEM &Cascade , CM CASCADECHILDREN MENUITEM &Tile , CM TILECHILDREN MENUITEM Arrange &lcons , CM ARRANGE1C0NS MENUITEM C&lose All , CM CLOSECHILDREN } } описание иконок

9.6.9. Пример программы для работы с графикой и стандартными диалоговыми окнами

Программа использует стандартные диалоговые окна для работы с файлами. Эти окна позволяют открыть новый файл, сохранить данные в файле и прочитать данные из файла. Меню программы содержит два раздела: Figure и File. Первый раздел позволяет вычерчивать на экране такие фигуры, как прямоугольник, окружность и многоугольник (первый пункт раздела позволяет также очистить экран). Второй раздел меню поддерживает работу с файлами путем вызова стандартных диалоговых окон.

#include <owl\owlpch.h> #include <ow!\applicat.h> #include <owl\framewin.h> #include <owl\opensave.h> #include <owl\dc.h> #include <owl\color.h>

#include gr.rc включение соответствующего файла

ресурса class TMyWindow : public TWindow { public:

TMyWindow(TWindow *parent = 0); конструктор -TMyWindowO { delete DragDC; delete FileData; }

деструктор



1 ... 144 145 146 [ 147 ] 148 149 150 ... 159

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика