BalloonTip vom Visual-Designer STREIKT

Anfängerfragen zum Programmieren mit PureBasic.
Jake
Beiträge: 121
Registriert: 28.05.2005 04:10
Wohnort: Berlin

BalloonTip vom Visual-Designer STREIKT

Beitrag von Jake »

Hallo,

ich habe mal den Visual-Designer ausprobiert und BalloonTips eingefügt, jedoch tut sich überhaupt nichts. Hier im Forum ist ein Fehler beschrieben der sich um einen doppelten Eintrag bezüglich WindowID() dreht, jedoch ist der doch in der neuen Version nicht mehr drin?

Das Include habe ich durch den Inhalt der Datei erstetzt.

Code: Alles auswählen

; PureBasic Visual Designer v3.90 build 1361


;- Window Constants
;
Enumeration
  #Hauptfenster
EndEnumeration

;- Gadget Constants
;
Enumeration
  #Berechnen
  #Seitenanzahl
  #TextSeitenanzahl
  #Startwinkel
  #TextStartwinkel
  #Endwinkel
  #TextEndwinkel
  #Stufenhoehe
  #TextStufenhoehe
  #String_1
  #TextTreppenhoehe
  #Kerndurchmesser
  #TextKerndurchmesser
  #Assendurchmesser
  #TextAussendurchmesser
  #Offset
  #TextOffset
  #Kern
  #Caulk
  #Detail
EndEnumeration


; BalloonTip Constants
#TOOLTIP_NO_ICON      = 0
#TOOLTIP_INFO_ICON    = 1
#TOOLTIP_WARNING_ICON = 2
#TOOLTIP_ERROR_ICON   = 3

Procedure BalloonTip(WindowID, Gadget, Text$ , Title$, Icon)
  
  ToolTip=CreateWindowEx_(0,"ToolTips_Class32","",#WS_POPUP | #TTS_NOPREFIX | #TTS_BALLOON,0,0,0,0,WindowID,0,GetModuleHandle_(0),0)
  SendMessage_(ToolTip,#TTM_SETTIPTEXTCOLOR,GetSysColor_(#COLOR_INFOTEXT),0)
  SendMessage_(ToolTip,#TTM_SETTIPBKCOLOR,GetSysColor_(#COLOR_INFOBK),0)
  SendMessage_(ToolTip,#TTM_SETMAXTIPWIDTH,0,180)
  Balloon.TOOLINFO\cbSize=SizeOf(TOOLINFO)
  Balloon\uFlags=#TTF_IDISHWND | #TTF_SUBCLASS
  Balloon\hWnd=WindowID
  Balloon\uId=GadgetID(Gadget)
  Balloon\lpszText=@Text$
  SendMessage_(ToolTip, #TTM_ADDTOOL, 0, Balloon)
  If Title$ > ""
    SendMessage_(ToolTip, #TTM_SETTITLE, Icon, @Title$)
  EndIf
  
EndProcedure

Procedure Open_Window_0()
  If OpenWindow(#Hauptfenster, 253, 11, 200, 340,  #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "TreppenTool")
    If CreateGadgetList(WindowID(#Hauptfenster))
      ButtonGadget(#Berechnen, 40, 305, 120, 20, "Berechnen")
      BalloonTip(WindowID(#Hauptfenster), #Berechnen, "Hallo", "Berechnen", #TOOLTIP_INFO_ICON)
      SpinGadget(#Seitenanzahl, 10, 10, 40, 20, 3, 60)
      BalloonTip(WindowID(#Hauptfenster), #Seitenanzahl, "Hallo", "Seitenanzahl", #TOOLTIP_INFO_ICON)
      TextGadget(#TextSeitenanzahl, 55, 13, 135, 14, "Anzahl der Seiten")
      SpinGadget(#Startwinkel, 10, 40, 40, 20, 0, 359)
      BalloonTip(WindowID(#Hauptfenster), #Startwinkel, "Hallo", "Startwinkel", #TOOLTIP_INFO_ICON)
      TextGadget(#TextStartwinkel, 55, 43, 135, 14, "Startwinkel")
      SpinGadget(#Endwinkel, 10, 70, 40, 20, 0, 359)
      BalloonTip(WindowID(#Hauptfenster), #Endwinkel, "Hallo", "Endwinkel", #TOOLTIP_INFO_ICON)
      TextGadget(#TextEndwinkel, 55, 73, 135, 14, "Endwinkel")
      BalloonTip(WindowID(#Hauptfenster), #TextEndwinkel, "Hallo", "EndWinkel", #TOOLTIP_INFO_ICON)
      SpinGadget(#Stufenhoehe, 10, 100, 40, 20, 1, 16)
      BalloonTip(WindowID(#Hauptfenster), #Stufenhoehe, "Hallo", "Stufenhoehe", #TOOLTIP_INFO_ICON)
      TextGadget(#TextStufenhoehe, 55, 103, 135, 14, "Stufenhöhe")
      StringGadget(#String_1, 10, 130, 40, 20, "500", #PB_String_Numeric)
      BalloonTip(WindowID(#Hauptfenster), #String_1, "Hallo", "Treppenhöhe", #TOOLTIP_INFO_ICON)
      TextGadget(#TextTreppenhoehe, 55, 133, 135, 14, "Treppenhöhe")
      StringGadget(#Kerndurchmesser, 10, 160, 40, 20, "50", #PB_String_Numeric)
      BalloonTip(WindowID(#Hauptfenster), #Kerndurchmesser, "Hallo", "Kerndurchmesser", #TOOLTIP_INFO_ICON)
      TextGadget(#TextKerndurchmesser, 55, 163, 135, 14, "Kerndurchmesser")
      StringGadget(#Assendurchmesser, 10, 190, 40, 20, "300", #PB_String_Numeric)
      BalloonTip(WindowID(#Hauptfenster), #Assendurchmesser, "Hallo", "Außendurchmesser", #TOOLTIP_INFO_ICON)
      TextGadget(#TextAussendurchmesser, 55, 193, 135, 14, "Außendurchmesser")
      SpinGadget(#Offset, 10, 220, 40, 20, 0, 10)
      BalloonTip(WindowID(#Hauptfenster), #Offset, "Hallo", "Offset", #TOOLTIP_INFO_ICON)
      TextGadget(#TextOffset, 55, 223, 135, 14, "Offset")
      CheckBoxGadget(#Kern, 10, 245, 180, 20, "Kern")
      BalloonTip(WindowID(#Hauptfenster), #Kern, "Hallo", "Kern", #TOOLTIP_INFO_ICON)
      CheckBoxGadget(#Caulk, 10, 265, 180, 20, "Caulk Textur")
      BalloonTip(WindowID(#Hauptfenster), #Caulk, "Hallo", "Caulk Textur", #TOOLTIP_INFO_ICON)
      CheckBoxGadget(#Detail, 10, 285, 180, 20, "Detail Brushes")
      BalloonTip(WindowID(#Hauptfenster), #Detail, "Hallo", "Detail Brushes", #TOOLTIP_INFO_ICON)
      
    EndIf
  EndIf
EndProcedure
Open_Window_0()

Repeat
  
  Event = WaitWindowEvent()
  
  If Event = #PB_EventGadget
    
    ;Debug "WindowID: " + Str(EventWindowID())
    
    GadgetID = EventGadgetID()
    
    If GadgetID = #Berechnen
      
    ElseIf GadgetID = #Seitenanzahl
      
    ElseIf GadgetID = #Startwinkel
      
    ElseIf GadgetID = #Endwinkel
      
    ElseIf GadgetID = #Stufenhoehe
      
    ElseIf GadgetID = #String_1
      
    ElseIf GadgetID = #Kerndurchmesser
      
    ElseIf GadgetID = #Assendurchmesser
      
    ElseIf GadgetID = #Offset
      
    ElseIf GadgetID = #Kern
      
    ElseIf GadgetID = #Caulk
      
    ElseIf GadgetID = #Detail
      
    EndIf
    
  EndIf
  
Until Event = #PB_EventCloseWindow

End
;
Ich habe im Forum auch noch einen anderen Code zum BalloonTip gefunden, jedoch öffnet sich der Tip dort nur einmal wenn man das Delay abwartet das den Tip automatisch ausblendet, wenn man die Maus nicht bewegt.

Ich kann den Fehler nicht finden.
MfG Jake
Benutzeravatar
HeX0R
Beiträge: 3042
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Hmm... geht hier (Win98SE ... jaja ich weiss, sagts meim Chef/PB3.93)wunderbar!
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: BalloonTip vom Visual-Designer STREIKT

Beitrag von Kiffi »

> jedoch tut sich überhaupt nichts.

hier (W2K SP4) funktioniert's.

Grüße ... Kiffi
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Bei mir (WinXP Pro SP2) geht's auch. Vielleicht solltest Du in der Systemsteuerung nachsehen, Effekte oder so, ob's nicht vielleicht deaktiviert wurde, weil die Einstellung betrifft alle BalloonTips.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Hier funktionierts auch WinXP Home SP2. Vielleicht hast du ja XP-Antispy, da gabs doch auch so ne option mit Ballontips ausschalten.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

> Vielleicht hast du ja XP-Antispy, da gabs doch auch so ne option mit
> Ballontips ausschalten.

ähm, kann es sein, dass Du da was verwechselst? Gemeint ist sicher die
Option, Ballontipps nur in der Antispy-GUI auszuschalten und nicht
systemweit.

Grüße ... Kiffi
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Glaub ich nicht:
http://xp-antispy.org/images/screenshot.gif
In dieser liste kann man ballontips deaktivieren. Unter dem selektierten eintrag.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Funktioniert hier auch WinXP SP2 - voll gepatched.

Die Option, Balloon-Tips auszuschalten ist meines Erachtens nur für den Systeminformations-Bereich, oder wie sich das Teil mit Uhr nennt, in der Taskleiste gedacht.
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

bluejoke hat geschrieben:Funktioniert hier auch WinXP SP2 - voll gepatched.

Die Option, Balloon-Tips auszuschalten ist meines Erachtens nur für den Systeminformations-Bereich, oder wie sich das Teil mit Uhr nennt, in der Taskleiste gedacht.
Systray ;) . Na dann liegts wie ts-soft schon sagte an den systemeinstellungen für effekte.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Jake
Beiträge: 121
Registriert: 28.05.2005 04:10
Wohnort: Berlin

Beitrag von Jake »

Also an Antispy liegt es nicht denn es stimmt was Kiffi sagt.

Am Systeminformationsbereich liegt es sicher auch nicht da bei Anwendungen die ich runterlade die BalloonTips immer gehen.
MfG Jake
Antworten