Seite 1 von 1

Fensterinhalt redraw

Verfasst: 12.05.2005 12:35
von uthi
Hallo,

wenn ein Fenster (zum Beispiel mit Ergebnistabellen) geöffnet ist (Code siehe unten) und man öffnet eine beliebige Windows-Applikation, die dieses Fenster (teilweise oder ganz) überdeckt, so ist der Fensterinhalt verschwunden, sobald man die Windows-Applikation (z. B. den Dateimanager) wieder schließt. Gibt es einen Befehl zum permanenten Redraw oder ähnliches?

Code: Alles auswählen

If OpenWindow(1,15,0,WBreite,WHoehe,#PB_Window_SystemMenu,"Tabelle der Messwerte")
  ScalFakt.f=1
  StartDrawing(WindowOutput())
  Gosub Tabelle
  StopDrawing()
  Repeat:Until  WaitWindowEvent()=#PB_Event_CloseWindow
  CloseWindow(1)
  HideWindow(0,0)
EndIf
Danke!

Edit by Kiffi: Code-Tags gesetzt

Verfasst: 12.05.2005 12:44
von Rubiko
schonmal versucht in der schleife zu zeichnen? ;)

Verfasst: 13.05.2005 06:29
von Danilo
@uthi:
Zeichne doch auf ein Bild und zeige es in einem ImageGadget an.

Code: Alles auswählen

If OpenWindow(1,15,0,WBreite,WHoehe,#PB_Window_SystemMenu,"Tabelle der Messwerte")
  CreateGadgetList(WindowID())
  ImageGadget(1,0,0,WBreite,WHoehe,CreateImage(1,WBreite,WHoehe))
  ScalFakt.f=1
  StartDrawing(ImageOutput())
  Gosub Tabelle
  StopDrawing()
  Repeat:Until  WaitWindowEvent()=#PB_Event_CloseWindow
  CloseWindow(1)
  HideWindow(0,0)
EndIf

Verfasst: 14.05.2005 18:00
von Amon
Weil es hier gerade gut reinpasst - wie skaliere (bzw. passe die Grösse des Gadgets an die Fenstergrösse an?) ich denn ein Image Gadget zur Laufzeit?

Verfasst: 14.05.2005 18:05
von Ynnus
ResizeGadget(#Gadget, x, y, Breite, Höhe) <-- ändern des Gadgets
ResizeImage(#Image, Breite, Höhe [, Modus]) <-- Image Größe ändern

Ist aus der Hilfe-Datei aus der Gadget-Library entnommen.

Verfasst: 14.05.2005 19:41
von Amon
danke - ich mach mir mal eben nen augenarzt termin aus :) *peinlich*