CWnd Problem

CodeFatal

Erfahrenes Mitglied
Hallo und Guten Morgen,

ich suche eine möglichkeit innerhalb eines Fensters eine LButtonDown msg auf ein darauf enthaltenes CWnd Objekt abzufangen.
Ich brauch diese Message egal ob das Objekt Enabled oder Disabled ist.

Im speziellen möchte ich eine Aktion in dem Hauptfenster auslösen, wenn auf einen Button gedrückt wird.
Ein überladen der OnLButtonDown des Buttons möchte ich vermeiden.
Mir reicht es nur die Info an den Parent dialog weiterzugeben.

Dazu hab ich folgendes, leider ohne Erfolg, gemacht.

Das NOTIFY Flag im Button gesetzt und in der MESSAGE_MAP folgendes eingetragen:
Code:
ON_NOTIFY(BN_CLICKED,IDOK,test)

Hat jemand ne Idee was ich falsch gemacht hab?
Das ganze wird für ein WinCE 5.0 geschrieben.

Danke schon mal für eure Hilfe.

Gruß Michael
 
Das klingt nach einem Fall für PreTranslateMessage. Damit bekommst du das WM_LBUTTONDOWN von dem Button und kannst das zum Beispiel im Parent abfragen (das HWND auf das vom Button prüfen).

Ich bin mir allerdings nicht sicher, ob das auch bei einem disable-ten Button kommt.
 
Danke,
ich werds mal ausprobieren, beim aktiven Button bekomm ich ja auch die BN_CLICKED Message... Vielleicht kommt mir ja noch die Idee...

Gruß Michael
 
Die WM_LBUTTONDOWN sollte auf jeden Fall kommen. Eventuell mußt Du halt über die Mausposition prüfen, ob auf den Button geklickt wurde. Allerdings glaube ich, daß die BN_CLICKED-Nachricht normalerweise erst durch WM_LBUTTONUP ausgelöst wird.
 
Hallo,
leider sind meine Versuche benachrichtigt zu werden, wenn auf einen Inaktiven Button geklickt wurde, bisher gescheitet.

Was wird denn noch vor der PreTranslateMessage ausgeführt?

Ist der Button aktiv, dann klappt alles.

Wichtig ist mir nur, das ich ein Event bekomme, sobald der Klick erfolgt, woher ist mir dabei egal.

Habt ihr vielleicht noch ne idee?

Gruß Michael
 
Zurück