Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 249656 (11092)

| Suchen
| Zurück zur Übersicht

Autor | Thema: Dialog neuzeichnen?
Sascha
| Datum:04.06.01 17:16 (sascha@willecke-net.de) |
Hallo, ich habe einen mit create("dialog"... erstellen dialog und verzweigen von diesem aus, in einen weiteren dialog! Wenn ich jetzt mit @destroywindow(dialog%) den zweiten wieder beende um zum ersten zurückzukehren ist dieser nur grau in der farbe und alle Grafiken die ich mit startpaint....endpaint daraufgezeichnet habe sind verschwunden! Wie kann ich diese neuzeichnen lassen? MFG Sascha http://www.profan.willecke-net.de
Dietmar Horn
| Datum:04.06.01 17:32 (ALV-Hoyerswerda@t-online.de) |
Hallo Sascha, nach der Rückkehr zu deinem ersten Dialog musst du alle Grafiken dieses Dialoges neu zeichnen. Dies ist immer dann erforderlich, nachdem ein anderes Objekt den Dialog verdeckt hatte, oder dieser mit der Maus teilweise über den Bildschirmrand hinaus verschoben worden ist:
    SetAutoPaint 1
    clear e%
    whilenot e%
     WaitInput
     if %wmPaint
      'Neuzeichnen
     endif

     If ...
      ' Hier kommen alle anderen Abfragen rein
     Endif

    wend

    SetAutoPaint 2
MfG Dietmar
Rolf Koch
| Datum:04.06.01 17:32 (webmaster@rokosoft.de) |
Hi Sascha, erstelle doch eine Proc, welche alle zu zeichnenden Teile beinhaltet. Rufe diese Proc bei erstellung des Dialogs auf. Wenn Du nun das 2te Dialogfeld wieder schließt, rufe einfach diese Proc wiederum auf. Nicht vergessen:
    If %wmPaint
        <.. Fenster neu zeichnen ..>
    EndIf
Sascha
| Datum:04.06.01 22:48 (sascha@willecke-net.de) |
hallo, einziges Problem ist das ich in diesem dialog noch buttons choiceboxen etc. habe und diese beim neuzeichnen übermahlt werden! diese müsste ichja dann auch neuzeichnen aber bevor ich diese neuzeichne muss ich sie ja mit @destroywindow(.... löschen und dann mit @create(.... neuaufbauen! Oder hab ich da einen denkfehler? MFG Sascha http://www.profan.willecke-net.de
Rolf Koch
| Datum: 04.06.01 22:55 (webmaster@rokosoft.de) |
Wenn ich jetzt keinen Denkfehler drin habe könntest Du in dieser Proc dann alle Objekte wieder in den Vordergrund holen:
    SetWindowPos Objekt= x,y-x,x;-1
schau mal in der Profanhilfe nach SetWindowPos Rolf

| Zurück zur Übersicht