shabum 发表于 2020-8-3 17:14:42

我这里有个问题想请教一下,麻烦帮帮忙

#将tkinter写成Tkinter可兼容Python 2.x
from tkinter import *
class App:
    def __init__(self,master):
      self.master = master
      self.initWidgets()
    def initWidgets(self):
      lb = Label(self.master,width=40,height=3)
      #lb.config(bg="lightgreen",font=("Times",20))
      lb["bg"]="lightgreen"
      lb["font"]=("Times",20)
      #为鼠标移动事件绑定事件处理方法
      lb.bind("<Motion>",self.motion)
      #为按住左键时的鼠标移动事件绑定事件处理方法
      lb.bind("<B1-Motion>",self.press_motion)
      lb.pack()
      self.show = Label(self.master,width=38,height=1)
      self.show.config(bg="white",font=("Courier New",20))
      self.show.pack()
    def motion(self,event):
      self.show["text"] = "鼠标移动到(%s %s)"%(event.x,event.y)
      return
    def press_motion(self,event):
      self.show["text"] = "按住鼠标的位置为:(%s %s)" %(event.x,event.y)
      return
root=Tk()
root.title("鼠标事件")
App(root)
root.mainloop()


lb.config(bg="lightgreen",font=("Times",20))   和lb["bg"]="lightgreen"   本质上有没什么区别?
我想知道config这个用处

还有是时间里面的return 有没什么作用的? {:10_285:} 麻烦大佬们解答一下谢谢

zltzlt 发表于 2020-8-3 17:18:44

1. config() 就是设置控件的属性,它们本质上有区别

2. 在这里确实没什么作用,只是结束函数(当然不写 return 也能结束函数)

shabum 发表于 2020-8-3 17:24:41

zltzlt 发表于 2020-8-3 17:18
1. config() 就是设置控件的属性,它们本质上有区别

2. 在这里确实没什么作用,只是结束函数(当然不写...

那个能不能具体给个列子 让我好理解一点config(){:10_266:}

zltzlt 发表于 2020-8-3 17:26:27

shabum 发表于 2020-8-3 17:24
那个能不能具体给个列子 让我好理解一点config()

例如,下面两段代码的效果完全相同:

from tkinter import *

root = Tk()

label = Label(root, text='Hello', bg='red')
label.pack()

mainloop()

from tkinter import *

root = Tk()

label = Label(root)
label.config(text='Hello', bg='red')
label.pack()

mainloop()

shabum 发表于 2020-8-3 17:48:05

zltzlt 发表于 2020-8-3 17:26
例如,下面两段代码的效果完全相同:

谢谢
页: [1]
查看完整版本: 我这里有个问题想请教一下,麻烦帮帮忙