2005年11月20日 星期日 19:17
根据wangzhe的代码,如果我想在第三次按鼠标
左键后绿线再一次出现,然后消失,出现紫线,
如此等等,怎么实现?谢谢!
from Tkinter import *
ClickNum = 0
def drawline(event):
global ClickNum
if ClickNum == 0:
canvas.create_line(100, 0, 100, 200, arrow=FIRST,fill="green",tag="a")
elif ClickNum == 1:
canvas.delete("a")
canvas.create_line(100, 50, 60, 300, arrow=FIRST,fill="purple")
ClickNum += 1
tk = Tk()
canvas = Canvas(tk, bg="white", bd=0, highlightthickness=0)
canvas.pack(fill=BOTH, expand=YES)
canvas.create_line(100, 200, 350, 200, arrow=LAST,fill='red')
canvas.bind("<1>", drawline)
tk.mainloop()
2005年11月20日 星期日 22:11
Shi Mu wrote: > 根据wangzhe的代码,如果我想在第三次按鼠标 > 左键后绿线再一次出现,然后消失,出现紫线, > 如此等等,怎么实现?谢谢! [代码略] 既然你已经会让绿线消失紫线出现了,那么让紫线消失绿线出现相信你一定能办得 到。再好好想想:) -- Qiangning Hong, Registered Linux User #396996 My Blog: http://www.hn.org/hongqn RSS: http://feeds.feedburner.com/hongqn
2005年11月21日 星期一 11:56
On 11/20/05, Qiangning Hong <hongqn at gmail.com> wrote: > Shi Mu wrote: > > 根据wangzhe的代码,如果我想在第三次按鼠标 > > 左键后绿线再一次出现,然后消失,出现紫线, > > 如此等等,怎么实现?谢谢! > [代码略] > > 既然你已经会让绿线消失紫线出现了,那么让紫线消失绿线出现相信你一定能办得 > 到。再好好想想:) > 可以用能否被2整除的 方法来确定.如果希望1和2的赋 值情况不变,有什么方法让ClickNum 每经过两次按键后恢复为零呢?
2005年11月21日 星期一 12:12
Shi Mu wrote:
>>>根据wangzhe的代码,如果我想在第三次按鼠标
>>>左键后绿线再一次出现,然后消失,出现紫线,
>>>如此等等,怎么实现?谢谢!
>>
>>[代码略]
>
> 可以用能否被2整除的
> 方法来确定.如果希望1和2的赋
> 值情况不变,有什么方法让ClickNum 每经过两次按键后恢复为零呢?
看看下面这个代码:
ClickNum += 1
if ClickNum >= 2:
ClickNum = 0
或者你要是喜欢one-liner的话:
ClickNum = (ClickNum + 1) % 2
--
Qiangning Hong, Registered Linux User #396996
My Blog: http://www.hn.org/hongqn
RSS: http://feeds.feedburner.com/hongqn
Zeuux © 2025
京ICP备05028076号