執(zhí)行此代碼后,我收到錯誤win未找到從不同函數(shù)運(yùn)行tkinter很重要,因?yàn)檫@是作業(yè)法典:import tkinter as tkfrom tkinter import *def zui(kaj,saj): zun=kaj kaj=kaj+"=tk.Tk()" exec(kaj) saj=zun+".title('"+saj+"')" exec(saj)def zabel(self,naj,iaj,oaj,baj,gaj,taj): spsp=self+"="+"Label("+naj+", text='"+iaj+"', bg='"+oaj+"', height="+gaj+", width="+taj+",fg='"+baj+"')" spsp=str(spsp) exec(spsp)def zosition(qak,iak,nak): sspp=qak+".grid(row="+iak+", column="+nak+")" exec(sspp)def zainzoop(tak): sft=tak+".mainloop()" exec(sft)zui("win","zahid app")zabel("label","win","hello world","white","black","4","10")zosition("win","1","1")zainzoop("win")追蹤:Traceback (most recent call last): File "c:/PyProjects/Patient Data Entry/hello.py", line 20, in <module> zabel("label","win","hello world","white","black","4","10") File "c:/PyProjects/Patient Data Entry/hello.py", line 12, in zabel exec(spsp) File "<string>", line 1, in <module>NameError: name 'win' is not defined
1 回答

精慕HU
TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個贊
這是使用 tkinter 的一種非常奇怪的方式,無論如何我該判斷誰。 采取一個參數(shù)來做出聲明。這是執(zhí)行官的樣子:exec()globals()global
exec(spsp,globals())
exec(sspp,globals())
exec(sft,globals())
最后,應(yīng)該這樣稱呼:zosition()
zosition("label","1","1")
以防萬一您對它通常的樣子感到好奇:
import tkinter as tk
kaj = tk.Tk()
kaj.title('zahid app')
spsp = tk.Label(kaj,text='Hello World',bg='white',fg='black',height=4,width=10)
spsp.grid(row=1,column=1)
kaj.mainloop() #much easier right?
- 1 回答
- 0 關(guān)注
- 173 瀏覽
添加回答
舉報(bào)
0/150
提交
取消