Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   TADVGroupBox und biHelp (https://www.delphipraxis.net/173825-tadvgroupbox-und-bihelp.html)

Sherlock 19. Mär 2013 10:35

TADVGroupBox und biHelp
 
Hi,
ich hab da mal ein...ungewöhnliches Problem. Ich will biHelp nutzen, um erklärende Texte zu diversen Controls auf einem einfachen Dialog anzuzeigen. Das funktioniert richtig gut, bis auf TADVGroupBoxen. Die reagieren gar nicht auf den Hilfsmauszeiger.
Kurz zur Umsetzung, die ich bisher nutze:
  • alle fraglichen Controls haben den gewünschten Text in der Hint-Property
  • ShowHint ist False
  • Jedes fragliche Control hat einen eigenen Wert in HelpContext
  • biHelp ist natürlich aktiviert und steht alleine, also kein biMaximize oder biMinimize
Ausserdem führe ich diesen Messagehandler für WM_Help aus:
Delphi-Quellcode:
procedure TMyDialog.ShowMyHelp(var message: TMessage);
var
  hhPopup:        THH_Popup;
  myControlHandle: THandle;  
  myMousePos:     TPoint;    
begin
  hhPopup.cbStruct := SizeOf(hhPopup);
  hhPopup.hInst := 0;
  hhPopup.idString := 0;
  myControlHandle := PHelpInfo(message.lParam)^.hItemHandle;
  myMousePos := PHelpInfo(message.lParam)^.MousePos;
  hhPopup.pszText := PWideChar(FindControl(myControlHandle).Hint);
  hhPopup.pt := myMousePos;
  hhPopup.clrForeground := COLORREF(-1);
  hhPopup.clrBackground := COLORREF(-1);
  hhPopup.rcMargins := Rect(-1, -1, -1, -1);
  hhPopup.pszFont := '';
  HtmlHelp(Self.Handle, nil, HH_DISPLAY_TEXT_POPUP, dword(@hhPopup));
end;
Wie gesagt, für andere Controls wie Buttons oder auch Memos geht das...nur nicht für die ADVGroupBoxes...jemand eine Idee? Sources zu den ADV hab ich, falls ich da rein müsste.

Sherlock
PS:
Crosspost zu http://www.tmssoftware.com/site/foru...box-and-bihelp

Sherlock 20. Mär 2013 15:41

AW: TADVGroupBox und biHelp
 
Hat keiner eine Idee? Oder weiss vieleicht jemand was im Hintergrund rund um dieses biHelp passiert? Ich werde aus der MSDN in dieser Hinsicht nicht wirklich schlau.

:gruebel:

Sherlock

Sherlock 22. Mär 2013 09:19

AW: TADVGroupBox und biHelp
 
Ist erledigt, Lösung steht hier:
http://www.delphipraxis.net/1208383-post18.html

Sherlock


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz