Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Balloon Tooltip (https://www.delphipraxis.net/158509-balloon-tooltip.html)

Willie1 7. Mär 2011 11:27

AW: Balloon Tooltip
 
Hallo Leute,
als Hobby-Programierer bin ich erst vor kurzem auf Delphi XE umgestiegen. Ich weiß, dass wg. pWideChar einiges an zu passen ist.
Mit den Balloon-Tooltips habe ich ein Problem, welches ich nicht zu lösen vermag. Den Quelltext habe ich hier weiter oben veröffentlicht. Er funktioniert auch mit Delphi XE, der Tooltip wird mit Text und Ikone angezeigt, aber vom Titel (title) wird nur das erste Zeichen angezeigt. Hängt sicher mit WideChar zusammen, kennt eine/r die Lösung...

ich hoffe ihr feiert nicht alle Karneval!
Willie

Willie1 7. Mär 2011 15:08

AW: Balloon Tooltip
 
ich habe über Balloon-Tooltips herum gesucht, aber nichts gefunden, was weiter hilft.
Bitte meldet euch!

Willie

Willie1 7. Mär 2011 15:37

AW: Balloon Tooltip
 
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

hier ist der Link zum MSDN, damit müsste doch einer von euch was anfangen können. Ich kann kein C.
Wi.

Willie1 7. Mär 2011 16:32

AW: Balloon Tooltip
 
Ich habe die Lösung gefunden.

Delphi-Quellcode:
Const
  TTM_SETTTTLEW = (WM_USER + 33); // Neu

function ShowBalloonTipHandle(hWnd: THandle; Icon: integer; Title, Text: string;
                         BackCL, TextCL: TColor;
                         RightTop: Boolean=false): THandle;
var
  ti: TOOLINFO;
  fl: Integer;
  b: pWideChar;
  pTitle: PWideChar;
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 := PWideChar(Title);

  Result := CreateWindow(TOOLTIPS_CLASS, nil,
    WS_POPUP or TTS_NOPREFIX or TTS_BALLOON or TTS_ALWAYSTIP,
    0, 0, 0, 0, hWnd, 0, HInstance, nil);
  if Result <> 0 then
  begin
    SetWindowPos(Result, 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(Result, TTM_SETTIPBKCOLOR, BackCL, 0);
    SendMessage(Result, TTM_SETTIPTEXTCOLOR, TextCL, 0);
    SendMessage(Result, TTM_ADDTOOL, 1, Integer(@ti));
    SendMessage(Result, TTM_SETTITLEW, Icon mod 4, Integer(pTitle)); //<-- Ändern
  end;
  FreeMem(b)
end;
Willie.

DeddyH 7. Mär 2011 16:34

AW: Balloon Tooltip
 
Könntest Du das Pushen bitte in Zukunft unterlassen? Das ist nämlich sehr unfair gegenüber den Anderen, die ein Problem haben und sich an die Forenregeln halten.

Willie1 7. Mär 2011 18:19

AW: Balloon Tooltip
 
Zitat:

Könntest Du das Pushen bitte in Zukunft unterlassen? Das ist nämlich sehr unfair gegenüber den Anderen, die ein Problem haben und sich an die Forenregeln halten.
D
Sorry, könntest du mir bitte erklären gegen welche Forumregel ich verstoßen habe?
Obwohl ich eigentlich hier nie mehr davon sprechen wollte, ich kann schlecht sehen und kann lange Texte(zB Forumregeln) nur mit Anstrengung lesen. So kann ich deinen Vorwurf nicht verstehen. Eine Antwort von dir würde ich schon erwarten. Danke DeddyH.

W.

haentschman 7. Mär 2011 18:29

AW: Balloon Tooltip
 
Hallo...

DeddyH meinte mit Pushen immer einen neuen Beitrag zu erzeugen. Es kann ja vorkommen, daß man nachdem man eine Frage gestellt hat Neuigkeiten mitteilen möchte. Dazu steht dir die Funktion Beitrag bearbeiten zur Verfügung. Das Pushen (neuer Beitrag auf den eigenen) ist erst nach 24 Std. erlaubt.

PS: das ist aber Usus in allen Foren... nicht nur hier :zwinker:

:hi:

Willie1 7. Mär 2011 18:37

AW: Balloon Tooltip
 
Ok, ich war zu ungeduldig! Wird nicht mehr vorkommen.
Ich denke aber, dass meine Lösung (Balloon Tooltip) durchaus von allgemeinem Interesse sein könnte.
W.

haentschman 7. Mär 2011 18:57

AW: Balloon Tooltip
 
Ja gut... du kannst aber an deinen Beitrag über das Bearbeiten 100 Mal Informationen anhängen. Dadurch bleibt der ganze Thread auch übersichtlicher... 8-)

joehd 29. Mai 2013 13:08

AW: Balloon Tooltip
 
Hallo
also gelesen habe ich das nun alles und probiert auch aber wie binde ich die Prozedur. Ein ich habe noch nie so was eingebunden. Da muss ich was aus dem System einbinden... Kann mir da jemand einen tip geben . Ich würde den Tooltip gerne verwenden ...

Danke für einen Tip

Joachim


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:21 Uhr.
Seite 2 von 3     12 3      

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