WM_NOTIFY

3 отговора 69 прегледа
#1

WM_NOTIFY

Искам да попитам за какво служи това съобщение? До колкото знам List Box контролите(какти и други) трябва да бъдат създавани със стил WS_NOTIFY за да могат да получават LBN_DBLCLICK (както и други) съобщения родителите им. Само че има и макрос ON_NOTIFY който обработва също съобщения за двукратно натискане на мишката и т.н. Каква е разликата между ON_COMMAND съобщения обработващи двукратното натискане на мишката в контрола със стил WS_NOTIFY и ОN_NOTIFY макрос обработващ двукратно натискане на мишката в контрола?? Моля ви помогнете!!

Отговор
в отговор на Димитър_anon #2

Отг: WM_NOTIFY

Тоест по-конкретно въпроса ми е - какви нотификации отразява макросът ON_NOTIFY, предавани чрез WM_NOTIFY съобщения? Кога се получават?

Отговор
в отговор на Димитър_anon #3

Re: WM_NOTIFY

WM_NOTIFI syobshtenieto se izprashta za notificirane na kontrol ili dialog.
Naprimer za da moge kontrolyt da poluchi notificirashto syobshtenie za Tool Tip podskazka.

Отговор
в отговор на Димитър_anon #4

Re: WM_NOTIFY

Neka se probvam da ti pomogna oshte malko.
Pri poluchavane na syobshtenie WM_NOTIFY v parametyra wParam se sydyrga
ID-to na kontrolyt koito izprashta syobshtenieto/no ne viagi e taka/, a v lParam se sydyrga ukazatel kym struktura NMHDR. Tia e deklarirana taka:

typedef struct tagNMHDR {
HWND hwndFrom;
UINT idFrom;
UINT code;
} NMHDR;

Pri poluchavane na syobshtenito po parametyra "code" mogesh da razberesh
zashto e izprateno syobshtenieto.

Za poveche informacia vig v MSDN. Tam e opisano podrobno.
Ako niamash MSDN moga da ti izpratia opisanieto.

Отговор