Schrift verschwindet

Für allgemeine Fragen zur Programmierung mit PureBasic.
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Schrift verschwindet

Beitrag von sobi »

Hallo,

mit

Code: Alles auswählen

DrawText(#Text12)
habe ich einen Text auf mein Fenster geschrieben. Wenn das Fenster jedoch in der größe geändert wird und der Text nicht mehr genügend Platz hat, verschwindet der Text! Wie ändere ich das?
Der Beginn wurde so definiert:

Code: Alles auswählen

StartDrawing(WindowOutput())
Ist das in Ordnung?


Liebe Grüße,


Simon
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 jedem #PB_Event_SizeWindow den text neuzeichnen oder in ein ImageGadget anzeigen. findes du beispiele in der hilfe
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
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Beitrag von sobi »

ts-soft hat geschrieben:bei jedem #PB_Event_SizeWindow den text neuzeichnen oder in ein ImageGadget anzeigen. findes du beispiele in der hilfe
Vielen Dank für deinen Tipp, jetzt funktioniert es so, wie es funktionieren soll! :)
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Beitrag von sobi »

Hallo,

das #PB_Event_SizeWindow habe ich so eingebaut:

Code: Alles auswählen

Repeat 
Event = WindowEvent()
If Event =#PB_Event_SizeWindow
uebersicht()
Else
Delay(10)
EndIf 
Until Event = #PB_Event_CloseWindow
Das funktioniert zwar, ber wenn ich jetzt einen anderen Menüpunkt anklicke, dann öffnet er den nicht! Wie muss das richtig geändern werden?
Liebe Grüße,


Simon
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 »

Code: Alles auswählen

Repeat
  Event = WaitWindowEvent()
  Select Event
    Case #PB_Event_SizeWindow
      uebersicht()
    Case #PB_Event_Menu
      Select EventMenuID() 
        Case 1 : Debug "Menü-Eintrag 1 angeklickt!" 
        Case 2 : Debug "Menü-Eintrag 2 angeklickt!" 
        Case 3 : Debug "Menü-Eintrag 3 angeklickt!" 
      EndSelect 
    Case #PB_Event_Gadget 
      Select EventGadgetID() 
        Case 1 : Debug "Schalter 1 angeklickt!" 
        Case 2 : Debug "Schalter 2 angeklickt!" 
        Case 3 : Debug "Schalter 3 angeklickt!" 
      EndSelect 
  EndSelect
Until Event = #PB_Event_CloseWindow 
Findest Du alles auch in der Hilfe von PB
Wenn Du Deinen Text in ein ImageGadget zeichnest, wird es automatisch neugezeichnet. Findest Du auch in der Hilfe
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
Benutzeravatar
Lars
Beiträge: 347
Registriert: 31.08.2004 23:53
Wohnort: Shanghai
Kontaktdaten:

Beitrag von Lars »

Ehem. . . [c]#PB_Event_Repaint[/c]
Lars
The only problem with troubleshooting is, that sometimes the trouble shoots back.
P4 2,6Ghz, 512MB RAM, GeForce 6200, WinXP Pro SP2, PB V3.94
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Beitrag von sobi »

Lars hat geschrieben:Ehem. . . [c]#PB_Event_Repaint[/c]
Hallo,

Danke für den Tipp, aber wo kommt das #PB_Event_Repaint rein? - Den so richtig funktioniert es noch nicht! :-(

Code: Alles auswählen

Repeat 
  Event = WaitWindowEvent() 
  Select Event 
    Case #PB_Event_SizeWindow    
;uebersicht()           
    Case #PB_Event_Menu 
      Select EventMenuID() 
            Case 31 
              uebersicht()         
            Case 32 
              neu()             
            Case 19 
              Quit=1 
          EndSelect 
      EndSelect      
  Until Quit=1 
Lasse ich die uebersicht() das erste mal drin, dann zeigt er mir diese sofort an und wenn ich sie ändere, dann wird sie auch neu gezeichnet. Schmeiß ich sie raus, dann zeichnet er sie nicht neu (zeigt sie aber auch nicht gleich beim aufrufen an. Ich brauche beides. (neu zeichnen und nicht gleich anzeigen) - Nur, wie komm ich dahin?

LG


Simon
Sorgen sind wie Blumen, wenn man sie nicht gießt, gehen sie ein.
Antworten