我想实现一个函数,当单击Button时,相关的函数将按周期完成。我该怎么办?我按如下方式编写代码。我建议点击“开始”按钮,然后获取功能将按周期完成。我使用True同时执行此操作,但功能已停止
def fetch(ent,t):
i=0
w3username=ent[0].get()+'\n'
info.append(w3username)
w3passwd=ent[1].get()+'\n'
info.append(w3passwd)
emailname=ent[2].get()+'\n'
info.append(emailname)
emailpasswd=ent[3].get()+'\n'
info.append(emailpasswd)
for i in info:
t.insert(END,i)
def makeframe(root,fields):
entry=[]
variables=[]
for field in fields:
row=Frame(root)
lab=Label(row,width=10,text=field)
ent=Entry(row)
row.pack(side=TOP,fill=X)
lab.pack(side=LEFT)
ent.pack(side=RIGHT,expand=YES,fill=X)
var=StringVar()
var.set('enter here')
ent.configure(textvariable=var)
variables.append(var)
return variables
if __name__=='__main__':
info=[]
root=Tk()
root.title('iCare tool')
fileds=['w3username','w3passwd','emailuser','emailpasswd']
entry=makeframe(root,fileds)
t=Text(root)
Button(root,text='begin',command=(lambda:fetch(entry,t))).pack(side=LEFT,expand=YES,fill=X)
t.pack(side=BOTTOM)
root.mainloop()
我也使用after
方法,但仍无效
b = Button(root, text='begin', command=(lambda:fetch(entry,t)))
b.after(1000, fetch, entry, t)
b.pack()
答案 0 :(得分:1)
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(pattern, -1);
只执行一次函数。您必须在after
after
fetch()