Seite 1 von 1

BalloonToolTip wird im Hintergrund gezeigt.

Verfasst: 23.01.2005 17:38
von Lukaso
Hallo,

ich habe ein Problem, mein BalloonToolTip versteht sich irgendwie mit APIs nicht.

Code: Alles auswählen

OpenWindow(0, 0, 0, 100, 100, #PB_Window_SystemMenu | #PB_Window_ScreenCentered, "Test")
CreateGadgetList(WindowID())
ImageGadget(0, 5, 5, 95, 90, 0, #PB_Image_Border)
SetWindowLong_(GadgetID(0), #GWL_STYLE, GetWindowLong_(GadgetID(0), #GWL_STYLE) | $100)

Procedure BalloonTip(windowID, gadgetNum, balloonText$, balloonTitle$, balloonIcon)
  hBalloonTip = CreateWindowEx_(0, "ToolTips_Class32", "", #WS_POPUP | #TTS_NOPREFIX  | #TTS_BALLOON, 0, 0, 0, 0, 0, 0, GetModuleHandle_(0), 0)
  myBalloon.TOOLINFO\cbSize = SizeOf(TOOLINFO) 
  myBalloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
  myBalloon\hwnd = GadgetID(gadgetNum) 
  myBalloon\uId = GadgetID(gadgetNum) 
  myBalloon\lpszText = @balloonText$
  SendMessage_(ToolTip, #TTM_DELTOOL, 0, myBalloon)
  SendMessage_(hBalloonTip, #TTM_ADDTOOL, 0, myBalloon) 
  SendMessage_(hBalloonTip, #TTM_SETDELAYTIME, #TTDT_AUTOPOP, 10000) 
  If balloonTitle$ > ""
    SendMessage_(hBalloonTip, #TTM_SETTITLE, balloonIcon, @balloonTitle$) 
  EndIf 
EndProcedure  
 
BalloonTip(0, 0, "test test test" + Chr(13) + "test test test" + Chr(13) + "test test test" + Chr(13) + "test test test" + Chr(13) + "test test test", "test", #TOOLTIP_INFO_ICON)

Repeat
  EventID = WaitWindowEvent()
  GadgetID = EventGadgetID()
  
  Select GadgetID
    Case 0
      Select EventID
        Case #WM_LButtonDown
          SendMessage_(WindowID(0), #WM_NCLBUTTONDOWN, #HTCAPTION, 0) ; Ausklammern und erneut probieren!
      EndSelect
  EndSelect
  
Until EventID = #PB_EventCloseWindow
End
Das BalloonToolTip wird Hinterm Fenster gezeigt. Wenn man aber

Code: Alles auswählen

SendMessage_(WindowID(0), #WM_NCLBUTTONDOWN, #HTCAPTION, 0)
ausklammert, Funktioniert es. Mein Problem ist, dass ich beide Funktionen benötige ....

Kann mir jemand Helfen?

Danke :allright:

Lukaso