ein Programm zum testen...

Code-Stücke können hier veröffentlicht werden.
Antworten
Pascal
User
Beiträge: 271
Registriert: Samstag 4. April 2009, 22:18

Hallo Leute

was passiert bei euch wenn ihr dieses Programm laufen lasst??

ich brauch einfach mal ein paar Rückmeldungen

Vielen Dank, dass ihr Euch Zeit dafür nimmt

Code: Alles auswählen

from Tkinter import *
import random 


def makefenster():
    fenster=Tk()

    screen_width  = int(fenster.winfo_screenwidth()) 
    screen_height = int(fenster.winfo_screenheight())

    fenster_width = random.randrange(10, screen_width-10)
    fenster_height= random.randrange(10, screen_width-10)

    fenster_xpos = random.randrange(10, screen_width-10)
    fenster_ypos = random.randrange(10, screen_width-10)

    fenster.wm_geometry("%dx%d+%d+%d" % (fenster_width,  fenster_ypos, fenster_xpos, 
        fenster_ypos))
    fenster.after(100,makefenster())
        
#_#_#_#_#_#_#...
    
makefenster()

ach ja und vielen Dank an wuf ^^

ich will einfach nur wissen, was passiert wenn ihr das programm laufen lasst... gaanz einfach
Zuletzt geändert von Pascal am Dienstag 14. April 2009, 19:36, insgesamt 1-mal geändert.
lunar

Worauf sollte man denn dabei achten, bzw. was erwartest du?
BlackJack

Er erwartet das Leute ein Programm starten, dass alle 100 Millisekunden ein zusätzliches Fenster auf den Bildschirm bringt. So blöd ist hoffentlich keiner.

Wobei das Verhalten nicht deterministisch ist, da diese Fenster alle vom Typ `Tkinter.Tk` sind, wovon es nur *ein* Exemplar gleichzeitig geben darf. Zusätzliche Fenster muss man mit `Tkinter.Toplevel` erstellen, wenn man ein Programm haben möchte, das sich wohldefiniert verhält.
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo Pascal

Dein Programm füllt den Speicher und dein PC wird zur Zeitbombe.

Zeigen tut es nichts (fenster.mainloop()) fehlt.

Was sind deine Erfahrungen damit ???

Gruss wuf :wink:
Take it easy Mates!
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Und dann wird "screen_height" noch nicht einmal verwendet. Von dem *-Import, PEP8 und Redundanz gar nicht zu reden :P
Das Leben ist wie ein Tennisball.
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo Pascal

Hier dein modifiziertes Programm, welches etwas sichtbares macht:

Code: Alles auswählen

from Tkinter import *
import random


def makefenster():

    fenster=Tk()

    def move_window():
        screen_width  = int(fenster.winfo_screenwidth())
        screen_height = int(fenster.winfo_screenheight())

        fenster_width = random.randrange(10, screen_width-10)
        fenster_height= random.randrange(10, screen_width-10)

        fenster_xpos = random.randrange(10, screen_width-10)
        fenster_ypos = random.randrange(10, screen_width-10)

        fenster.wm_geometry("%dx%d+%d+%d" % (fenster_width,  fenster_height, fenster_xpos,
            fenster_ypos))

        fenster.after(500, move_window)

    move_window()

    fenster.mainloop()

#_#_#_#_#_#_#

makefenster()
ACHTUNG: Eventuell kann es nur über die Tasten Ctrl-C beendet werden!!!

Gruss wuf :wink:
Take it easy Mates!
lunar

BlackJack hat geschrieben:Er erwartet das Leute ein Programm starten, dass alle 100 Millisekunden ein zusätzliches Fenster auf den Bildschirm bringt. So blöd ist hoffentlich keiner.
Lesen kann ich auch ... :roll:

Ich wollte vom OP einen guten Grund dafür hören, warum ich das ausführen sollte und welche Erkenntnisse er sich davon erhofft.
Pascal
User
Beiträge: 271
Registriert: Samstag 4. April 2009, 22:18

Danke für eure Antworten!

wuf, du hast genau verstanden was ich meinte
Antworten