|
Программирование >> Программирование на языке c++
new TStatic (this,-1, V SS BLACKRECT V ,200,170,200,15,50); my static = new TStatic (this,-1, SS BLACKRECT ,200,200,200,15,50); my static->Attr.Style = {my static->Attr.Style & ~SS LEFT) SS BLACKRECT; new TStatic (this,-1, V SS GRAYFRAME V ,200,230,200,15,50); my static = new TStatic (this,-1, SS GRAYFRAME ,200,260,200,15,50); my static->Attr.Style = (my static->Attr.Style & ~SS LEFT) SS GRAYFRAME; new TStatic (this,-1, V SS GRAYRECT V ,200,290,200,15,50); my static = new TStatic (this,-1, SS GRAYRECT ,200,330,200,15,50); my static->Attr.Style = (my static->Attr.Style & ~SS LEFT) SS GRAYRECT; void my app::lnitMainWindow(void) { SetMainWindow(new TFrameWindow(0, static control ,new my win())); nCmdShow = SW SHOWMAXiNiiZED; } int OwlMain(int, char**) { return my app().Run(); } Используемый в программе конструктор класса TStatic описывается в виде: TStatic(TWindow* parent, int Id, const char far *title, int X, int y, int w, int h, UINT textLen, TModule* module = 0); Bee параметры этого конструктора за исключением textLen уже рассматривались ранее. textLen - это число символов в тексте. Статический текст имеет следующие атрибуты, задан- ные по умолчанию: WS CHILD, WS VISIBLE, WS GROUP и SS LEFT. На рис. 9.30 показаны основные действия программы. Используемые в программе атрибуты изменяют вывод статического текста следующим образом: SS CENTER - выравнивание текста по центру; > SS RIGHT - выравнивание текста по правому краю; > SS BLACKFRAME - вычерчивание прямоугольника с черной границей по умолчанию (рис. 9.30); > SS BLACKRECT - вычерчивание заполненного черным цветом (по умолчанию) прямоугольника (рис. 9.30); > SS GRAYFRAME - вычерчивание прямоугольника с серой границей по умолчанию (рис. 9.30); > SS GRAYRECT - вычерчивание заполненного серым цветом (по умолчанию) прямоугольника (рис. 9.30). KoiiLii>> P к lacca m\ in ni> .slatic = new TStatic(...); Вы.чс.юнис памяти для ooi.cK 1 а m\ sta4c (my.static -> Altr.Stylc = ...) И iMCMciiMc афиб) lOB, iM.iaHiii.i\ no умолчанию пси TSlatic(...); Описание EIOllblN OOl.CKrOli OCl \ка iiue.icii на них (поско.1е,к\ о Ic\ 1 с 1 n>e необхо.чимосi h n выполнении дсйсгвнн с ooi.cKiaMH. в часгмосгн, не la.io менян, их aipHos 1Ы) nCnidSho = SW.SHOWMAXIMIZED;- Рис. 9.30. Работа со статическим текстом BaHie окно Рассмотрим еще один пример: #include <owl\applicat.h> #include <owl\framewin.h> #include <owl\static.h> class my app : public TApplication { public: my app() : TApplicationO {} protected: virtual void InitMainWindow(void); }; class my win : public TWindow { public: my win(); protected: char str[10]; TStatic* my static; void EvLButtonDown(UINT,TPoint&); void EvRButtonDown(UINT,TPoint&); DECLARE RESPONSE TABLE(my win); }; DEFINE RESP0NSE TABLE1(my winJWindow) EV WM LBUTTONDOWN, EV WM RBUTTONDOWN, END RESPONSE TABLE; my win::my win () : TWindow{0,0,0) { my static = new TStatic (this,-1, Default static , 200,10,200,15,50); } void my win::EvLButtonDown(UINT,TPoint&) { my static->GetText(str,8); my static-> Clear(); } void my win::EvRButtonDown(UINT,TPoint&) { my static->SetText(str); } void my app::lnitMainWindow(void) {SetMainWindow(new TFrameWindow(0, static contror,new my win()));} int OwlMain(int, char**)
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |