Mi a baj, ha a programablakot bezárom? (python, grafikus program)
from Tkinter import *
from random import *
from time import *
from threading import Thread
class valami(Thread):
def __init__(self):
Thread.__init__(self)
def run(self):
while True:
rajzolas()
sleep(0.5)
def rajzolas():
x = randrange(500)
y = randrange(500)
alakzat = felulet.create_oval(x, y, x + 100, y + 30, fill = 'red' )
felulet.coords(alakzat, x , y , x + 20, y + 30)
alap=Tk()
felulet = Canvas(alap, bg = 'black', width = 600, height = 600)
felulet.pack()
szal = valami()
szal.start()
alap.mainloop()
Sajnos a gyak.kérdések leveszi a szóközöket.:/
Légyszíves ne nézzetek sík hülyének,amiért ez nem(/sem) megy.
Hivatkozik a 14.,20.sorra, hogy az a hibás.
Ezt a sort:
felulet.coords(alakzat, x , y , x + 20, y + 30)
vidd le eközé a két sor közé:
felulet = Canvas(alap, bg = 'black', width = 600, height = 600)
felulet.pack()
Nem használhatsz egy objektumot a létrehozása előtt.
Ezt a sort:
alakzat = felulet.create_oval(x, y, x + 100, y + 30, fill = 'red' )
a jelenlegi helyéről a
felulet = Canvas(alap, bg = 'black', width = 600, height = 600)
utánra szúrd be!
Köszi a választ,de így se jó még mindig.:D
Ha az első kommentben leírtat csinálom,akkor az a baja,hogy
az "alakzat" nincs definiálva.
Ha a másodikban leírtakkal együtt csinálom,az van,hogy "x" nincs definiálva.
Ha a rajzolás fgv-be rakom be (mert úgy gondolom,hogy nem kéne ezt a fgv-t "kinyírni"), akkor is elhal az egész.
Na most a behúzás it igen-igen fontos lenne :)
Ha a
x = randrange(500)
y = randrange(500)
alakzat = felulet.create_oval(x, y, x + 100, y + 30, fill = 'red' )
felulet.coords(alakzat, x , y , x + 20, y + 30)
végig a rajzolas függvény része, akkor az elejére szúrj be egy
global felulet
sort, hogy lássa a globális felulet változót.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!