Balloon Tooltip
Hallo Leute,
ich habe mir eine Unit gebaut, um Balloon Tooltips anzeigen zu können. In einen Demoprogramm schien alles zu klappen, dann stellte ich aber fest, dass in einem Tochterfenster keine Tooltips aufpoppen, keine Fehlermeldung, es passiert einfach nichts. Übersehe ich da etwas Offensichtliches oder wie oder was? Schönen Sonntag Willie |
AW: Balloon Tooltip
Zitat:
|
AW: Balloon Tooltip
. . . . hab' mich auch schon gefragt,
wie man da helfen kann / soll ? :gruebel: worauf reagiert der Balloon-ToolTip, auf Messages ? - oder wird er direkt angesprochen . . . werden Variablen(Inhalte) übergeben ? . . . usw. |
AW: Balloon Tooltip
wie beschrieben funktioniert mein Balloon Tip in einem Programm ohne Tochterfenster. Fehlerbeschreibung: in einem Tochterfenster (statisch oder dynamisch) passiert einfach nichts!
W.
Delphi-Quellcode:
procedure ShowBalloonTip(hWnd: THandle; Icon: integer; Title, Text: string;
BackCL, TextCL: TColor; RightTop: Boolean=false); var hWndTip: THandle; ti: TOOLINFO; fl: Integer; b: pWideChar; pTitle: PChar; begin if RightTop then fl:=TTF_TRANSPARENT or TTF_SUBCLASS else fl:=TTF_CENTERTIP or TTF_TRANSPARENT or TTF_SUBCLASS; GetMem(b,2*256); pTitle := PChar(Title); hWndTip := CreateWindow(TOOLTIPS_CLASS, nil, WS_POPUP or TTS_NOPREFIX or TTS_BALLOON or TTS_ALWAYSTIP, 0, 0, 0, 0, hWnd, 0, HInstance, nil); if hWndTip <> 0 then begin SetWindowPos(hWndTip, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE); ti.cbSize := SizeOf(ti); ti.uFlags := fl; ti.hwnd := hWnd; ti.lpszText := StringToWideChar(Text, b, 2*356); Windows.GetClientRect(hWnd, ti.rect); SendMessage(hWndTip, TTM_SETTIPBKCOLOR, BackCL, 0); SendMessage(hWndTip, TTM_SETTIPTEXTCOLOR, TextCL, 0); SendMessage(hWndTip, TTM_ADDTOOL, 1, Integer(@ti)); SendMessage(hWndTip, TTM_SETTITLE, Icon mod 4, Integer(pTitle)); end; FreeMem(b); end; |
AW: Balloon Tooltip
Übergibst Du hier
Delphi-Quellcode:
das richtige Fensterhandle?
ShowBalloonTip(hWnd: THandle
|
AW: Balloon Tooltip
hier übergebe ich den Handle des Steuerelements (oder Form), über dem der Tooltip aufgehen soll. Ich wiederhole im Hauptfenster funktioniert alles. Ihr könnt es selbst ausprobieren.
W. |
AW: Balloon Tooltip
ich habe es mit XE durchgespielt, mehrere Forms, tut eigentlich das was ich erwarten würde....
|
AW: Balloon Tooltip
Wenn ich meine Routine in OnActivate einbaue funktioniert alles bestens! Das Problem ist gelöst.
Ich habe die Unit noch etws erweitert, wenn jemand Interesse hat, melde dich. MfG W. |
AW: Balloon Tooltip
Zitat:
Ich möchte aber anmerken das der Balloon Tooltip nicht als Standard Tooltip mißbraucht werden soll. gruss |
AW: Balloon Tooltip
ich habe die Procedure in eine Function umgewandelt, die den Handle des Tooltips zurückliefert, um mit DestroaWindow() den Tooltip aus zu blenden. Was meinst du mit Standart-Tooltip? (Hint bei Delphi?)
Ich finde, dass Balloon-Tooltips sehr sparsam eingesetzt werdem sollten, weil sie leicht nerven können. W. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:48 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