· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.WIN32 —› Стили окна

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Авг 25, 2003 00:26:18

Где-нибудь можно посмотреть какие параметры при создании окна в структуре wc
и в API CreateWindowEx влияют на его внешний вид и как, есть ли где
статья со скриншотами?


Дата: Авг 25, 2003 01:22:54 · Поправил: Asterix

Конкретно, интересует как сделать такое:



203081408__Border.PNG


Дата: Авг 25, 2003 04:19:53

что именно неактивная кнопка это все смотри в справочнике api там они все расписанны если очень надо могу дать справочник поэкспереминтируй а ввобще все то что ты указал делается в ресурсах


Дата: Авг 25, 2003 08:46:29

to angel_aka_ks, А по моему стрелочки указывают на рамочки.

to Asterix, эти рамочки - не параметры окна, они просто вырисовываються на WM_PAINT:
HDC GetDC(HWND hWnd);
BOOL LineTo( HDC hdc,// device context handle
int nXEnd, // x-coordinate of line's ending point
int nYEnd // y-coordinate of line's ending point
);


Дата: Авг 25, 2003 10:00:34 · Поправил: bsl_zcs

Рамочки - это GroupBox-ы. Особый вид кнопки, как ни странно. ;)

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shell cc/platform/commctls/buttons/buttontypesandstyles.asp

А для рисования простых рамочек без подписей owner draw и wm_paint тоже не нужны - для этих целей предназначены static controls...


Дата: Авг 25, 2003 10:06:21

Что то я таких групбоксов - с текстом по середине не видел никогда.


Дата: Авг 25, 2003 10:26:14

Как и у любой кнопки - BS_CENTER. :)


Дата: Авг 26, 2003 13:10:54

bsl_zcs

То что это GroupBox'ы я уже сам нашёл, но везде это делается
через ресурсы(в редакторе ресурсов), но мне нужно в программе,
через CreateWindowEx. Как такое можно сделать?


Дата: Авг 26, 2003 18:22:33

Я уверен что можно, просто я не знаю какие параметры в функцию
передать, для кнопки-знаю, для edit-знаю, для того чтоб сделать
метки в окне-тоже знаю, а вот GroupBox нифига не рисует :(


Дата: Авг 26, 2003 19:08:41

Создаём групбокс и в нём кнопку
invoke CreateWindowEx,0,Cb,podskazka,WS_CHILD+WS_VISIBLE+BS_GROUPBOX+B S_CENTER,250,300,300,90,[hwnd],120,[hinstance],NULL
mov [hButn],eax
invoke CreateWindowEx,0,Cb,podskazka,WS_CHILD+WS_VISIBLE+BS_CENTER,25, 30,30,30,[hButn],121,[hinstance],NULL


Дата: Авг 26, 2003 19:55:11

Спасибо! Попробую.


Дата: Авг 26, 2003 20:51:37

Создаю так:
invoke CreateWindowEx, WS_EX_LEFT, ADDR szGBoxClass, NULL,\
                           WS_CHILD or WS_VISIBLE or BS_GROUPBOX,\
                           GroupBox1L, GroupBox1T, GroupBox1W, GroupBox1H,\
                           hwnd, NULL, hInst, NULL
          mov   GroupBox1, eax


нифига не создаётся, что я упустил?

pas

Что у тебя за параметр 120 в первом CreateWindowEx?


Дата: Авг 26, 2003 21:30:58

Не создаётся вообще ничего или простая кнопка получается?
120 и 121 это идентификаторы кнопок может быть нулём.
szGBoxClass у Вас чему равен? Должен быть равен
Cb 'Button',0


Дата: Авг 26, 2003 21:41:53

[ pas: szGBoxClass у Вас чему равен? Должен быть равен Cb 'Button',0]

Наверное поэтому, я её задавал как 'GroupBox',0... :)


Дата: Авг 26, 2003 21:47:26

Всё Ok, нарисовалось!
А в каком параметре, передать текст для GroupBox
и указать чтоб он был расположен как на моём скрине??

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.052