|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
今天弄了一下tkinter,按照书上的例子画了几个方块,但是所画出来的方块都是黑色的,我想让它编程彩色边框,于是就在
canvas.create_rectangle(x1,y1,x2,y2)之中添加了color属性,结果报错,然后又添加了highlightcolor属性,结果又报错说没有这个属性,本来这些我是在Canvas类的Valid resource names之中照的属性,如图中所示,
画出来的图片
但是说这个属性是没有的,但是我加上了width 属性之后却又是正常的,最后我在网上搜索,找到使用outline属性,就可以设置边框的值,但是没有在上图之中找到outline这个属性,代码如:
canvas.create_rectangle(x1,y1,x2,y2,width=2,outline=‘red’,这时候是成功的,我不明白是怎么回事,希望高手解答一下,最后我画出来的图如下:
Canvas之中的属性值
也就是说,问题是:有的属性在Valid resource names属性列表之中,可以用、但是有的属性在属性列表之中,不可用、但是有的属性不在属性列表之中,却可以用,这是怎么回事啊?
针对比如create_rectangle这些方法而言,在使用时,他们所可以操作的属性,该从哪儿去找啊?为什么没有提及呢?从何处去找到?
1.先解惑,针对你的问题:有的属性在valid resource names列表中,不可用,有的不在其中,却可用。
那么,问题很简单了,'其中'的其指什么?也就是说这里的属性是谁的属性?
很显然,这些valid resource names列表中属性只是canvas这个类的属性。
那么答案就是:
不在其中的属性,却可用,显然,它是create_rectangle()的属性嘛。
那还有个问题:在valid resource naems中的属性却不可用,这又是为什么?
一种可能的解释是(因为我没仔细研究,不敢妄评):canvas的属性与 create_rectangle()的属性之间存在互斥关系,也就是说可能会相互覆盖。
2.关于最后一个问题,去哪里找?
这基本不算问题吧,当然是去官网找啊。
虽然我也不知道这算不算官网:http://effbot.org/tkinterbook/
这是直接看Canvas.create_rectangle-method
http://effbot.org/tkinterbook/canvas.htm#Tkinter.Canvas.create_rectangle-method
|
|