pyautogui tkinter マウスの操作を記録する処理をすると、他のボタンが押せず。処理が止まらない
何故でしょうか?
python
1 2#!/usr/bin/env python 3#-*-coding:utf-8-*- 4 5 6import tkinter 7import tkinter as tk 8 9import pyautogui 10from time import sleep 11 12 13root = tkinter.Tk() 14root.title("Window title") 15root.geometry("220x300+500+400") 16 17 18 19# マウス 20class Mouse_operation: 21 22 i=0 23 l=[] #マウス座標用 24 25 # 初期処理で現状の座標を追加 26 T=[list(pyautogui.position())]*2 27 28 29 30 # マウス移動の記録 31 def Move_mouse(): 32 while Mouse_operation.i==0: 33 sleep(0.01) 34 Mouse_operation.T+=[list(pyautogui.position())] 35 36 # 前回の座標と更新された座標が同じ 37 if Mouse_operation.T[-2]==Mouse_operation.T[-1]: 38 pass 39 # 座標が違うならl配列に追加 40 else: 41 Mouse_operation.l+=[list(pyautogui.position())] 42 print(Mouse_operation.l[-1]) # 最新の座標を確認 43 44 # 終了 45 if Mouse_operation.i==1: 46 break 47 48 49 # マウス操作を止める 50 def Mouse_operation_end(): 51 Mouse_operation.i=1 52 53 54 55 56 57button = tk.Button(root, text="マウス操作記録",font=("",14),command=Mouse_operation.Move_mouse) 58button.pack() 59 60button = tk.Button(root, text="マウス操作終了",font=("",14),command=Mouse_operation.Mouse_operation_end) 61button.pack() 62 63 64root.mainloop() 65 66
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/22 10:34
2018/04/22 10:39
2018/04/22 10:44