wie mach ich aus einem Handle wieder ein TObject?
ich will eine Hilfe einbauen, aber ich kann nicht jeder Komponente die Context ID hinzufügen, zu aufwändig.
deshalb will ich anhand von meiner Komponente von wo die Hilfe aufgerufen wird entscheiden welche Hilfe aufgerufen wird.
den Klassenname krieg ich schon mit GetClassNameW raus, aber das bringt mich noch nicht weiter
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| procedure TForm.WndProc(var msg: TMessage);
procedure _GetControlHelp(ChildHandle: THandle; ContextId: Integer); var aName: array [0..255] of Char; OwnContextId : integer; begin GetClassNameW(ChildHandle, aName, 256);
Application.HelpContext(OwnContextId ) end;
begin case msg.Msg of WM_HELP: _GetControlHelp(PHelpInfo(msg.LParam)^.hItemHandle, PHelpInfo(msg.LParam)^.dwContextId); end; inherited; end; |