C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Сообщение от кнопки, API
Daan
Отправлено: 03.06.2005, 08:44


Дежурный стрелочник

Группа: Участник
Сообщений: 62



Доброе время сутток.....
У меня такой вопросик...
пусть есть окошко
achwnd = CreateWindow(szClassName2, szWindowTitle2, WS_SYSMENU, 271, 163, 430, 400, hWND, 0, hInstance, NULL);


У него есть дочернее
hGroupBox=CreateWindow("button", "Выберите действие", WS_CHILD|WS_VISIBLE|BS_GROUPBOX, 8,16,410,300, achwnd, (HMENU)ID_GROUPBOX, hInstance, NULL);

В свою очередь у него тоже есть дочернее
hChSysButton = CreateWindow("button", "Выполнить системные действия", WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX, 24, 150, 235, 17, hGroupBox, (HMENU)ID_CHSYSBUTTON, hInstance, NULL);

как отдовить момент когда нажата "Выполнить системные действия". Или как это делается??? как работать с BS_GROUPBOX????
radiofun
Отправлено: 03.06.2005, 13:10


Ученик-кочегар

Группа: Участник
Сообщений: 20



поставь хук:
[CODE]
hHook=SetWindowsHookEx(WH_CALLWNDPROC,(HOOKPROC)CallWndProc,NULL, GetCurrentThreadId());

LRESULT CALLBACK CallWndProc(int nCode,WPARAM wParam,LPARAM lParam)
{
if(nCode==HC_ACTION)
{
LPCWPSTRUCT pStruct=((LPCWPSTRUCT)lParam);
if(pStruct->hwnd==hChSysButton && pStruct->message==BN_CLICKED && !pStruct->wParam)
{
действие...
}
}
return 0;
}
[CODE]
Daan
Отправлено: 03.06.2005, 22:11


Дежурный стрелочник

Группа: Участник
Сообщений: 62



хм.... а более не как... мне почему то кажется что должно как то проще быть... Зачем майкрасофт придумал такую дурость если с ней приходится так сложно работать....


Неужели с этим так и следуе работать????
radiofun
Отправлено: 05.06.2005, 15:54


Ученик-кочегар

Группа: Участник
Сообщений: 20



Проще наверняка есть только мне не известно как....

Почему бы не писать на VCL там с етим проще
Daan
Отправлено: 06.06.2005, 02:15


Дежурный стрелочник

Группа: Участник
Сообщений: 62



QUOTE (radiofun @ 05/06/2005, 17:54)
Почему бы не писать на VCL там с етим проще

Изучаю API...

Вернуться в Вопросы программирования в C++Builder