tkinter canvas里能加label吗
1个回答
展开全部
找不到资料,通常是看源代码的。好在python的源代码有时候比帮助,或者是在网上找的东西更好用。另外有一个国外写的书。tkinter编程,有机会可以下载一本看看,基本上你要的问题都有答案。下面简单说一下看源代码的事情。在python2.7的lib/lib-tk目录下有一个ttk.py文件 , 打开可以看到class Lable(Widget)发现,它初始时调 用了一个通用的Widget类,(强大)class Widget(Tkinter.Widget):调用了Tkinter.Widget.__init__Tkinter里class Widget(BaseWidget, Pack, Place, Grid):其中BaseWidget的setup显示,你可以输入任何参数,参数需要是classtype,和DictionaryType , 它是动态添加的。所以不保证其一定生效但是如果它不在conf里,就删除这些参数应该用于,widget本身属性,以及Pack, Place, Grid等类使用class Misc:这里面有所有的参数。太长了。如果你有耐心,可以仔细去看看。如果有兴趣,可以继续追一下tcl/tcl8.5里的代码。其中似乎也有所有的configure顺便帮你查找了《python与tkiner编程》这本书。在361和362页有所有你要的基本参数。太多了,这里就不列表了。375页有label特有的选项。包括bgstipple,fgstipple,lmargin1,lmargin2,offset,overstrike,margin,tabs,underline等标准选项有:backgroud,borderwidth,font,foregroud,justify,relief你在问题里列的width,height等应该是属于Pack,Place,Grid用的。395页有大部分控件共享选项的详细说明。53页有label的简单使用说明有这本书,基本上就不用自己看源代码了。作者是1993年就开始使用python的老手。另外你还可以使用HELP这个方法。>>> from Tkinter import *>>> root=Tk()>>> label=Label(root,text='xiaodeng')>>> help(label.config)Help on method configure in module Tkinter:configure(self, cnf=None, **kw) method of Tkinter.Label instance Configure resources of a widget. The values for resources are specified as keyword arguments. To get an overview about the allowed keyword arguments call the method keys.根据help的提示,你需要检查它的keys>>> print label.keys()['activebackground', 'activeforeground', 'anchor', 'background', 'bd', 'bg', 'bitmap', 'borderwidth', 'compound', 'cursor', 'disabledforeground', 'fg', 'font','foreground', 'height', 'highlightbackground', 'highlightcolor', 'highlightthickness', 'image', 'justify', 'padx', 'pady', 'relief', 'state', 'takefocus', 'text', 'textvariable', 'underline', 'width', 'wraplength']OK,上面应该就是你要的答案了。以后都可以用这个方法来找参数了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询