![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обработчик сообщений необрабатывает события. [D7, WinME]
Dunk © (2004-09-28 21:32:00)При нажатий на кнопку генерируется событие BN_CLICKED,
в обработчике WM_COMMAND поставил условие что при возникновений этого события будут выплнятся определенные действия.
Программа делает это только один раз когда запуск.
Digitman (2004-09-30 09:33:00) [1]
> Dunk
в справке же черным по белому написано, что код нотификационного сообщения передается в старшем слове параметра wParam !
какого же шута ты делаешь case ctrlID , если код у тебя лежит в nCode ?
Dunk (2004-09-29 20:26:00) [2]Сорри... событие BN_CLICKED
Dunk (2004-09-29 20:25:00) [3]Вот код проги:
function WindowProc(wnd:HWND; Msg : Integer; wParam: WPARAM; lParam: LPARAM):LRESULT; stdcall;
var nCode, ctrlID : word;
begin
case msg of
WM_COMMAND :
begin
nCode:=hiWord(wParam);
ctrlID:=loWord(wParam);
case ctrlID of
LBN_SETFOCUS :
begin
SetWindowText(edit,'select');
end;
Alex870 (2004-09-28 23:38:00) [4]А код (или его кусок) можно глянуть? Если ты пишешь на голом API, то значит есть что-то типа:
function WindowProc (Window : HWnd; Message, WParam : Word;LParam : LongInt) : LongInt; stdcall;
begin
case Message of
wm_command : if WParam = X then ..действие.., где X -идентификатор кнопки
end;
WindowProc := DefWindowProc (Window, Message, WParam, LParam);
end;