AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Balloon Tooltip

Ein Thema von Willie1 · begonnen am 20. Feb 2011 · letzter Beitrag vom 29. Mai 2013
Antwort Antwort
EWeiss
(Gast)

n/a Beiträge
 
#1

AW: Balloon Tooltip

  Alt 22. Feb 2011, 16:15
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.
Schön das es geht
Ich möchte aber anmerken das der Balloon Tooltip nicht als Standard Tooltip mißbraucht werden soll.

gruss
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
691 Beiträge
 
Delphi 10.1 Berlin Starter
 
#2

AW: Balloon Tooltip

  Alt 24. Feb 2011, 08:57
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.
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
691 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: Balloon Tooltip

  Alt 7. Mär 2011, 11:27
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
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
691 Beiträge
 
Delphi 10.1 Berlin Starter
 
#4

AW: Balloon Tooltip

  Alt 7. Mär 2011, 15:08
ich habe über Balloon-Tooltips herum gesucht, aber nichts gefunden, was weiter hilft.
Bitte meldet euch!

Willie
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
691 Beiträge
 
Delphi 10.1 Berlin Starter
 
#5

AW: Balloon Tooltip

  Alt 7. Mär 2011, 15:37
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.
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
691 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: Balloon Tooltip

  Alt 7. Mär 2011, 16:32
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.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#7

AW: Balloon Tooltip

  Alt 7. Mär 2011, 16:34
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:12 Uhr.
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