私はオートクリッカーを書いています。マウスダウンとマウスアップの間の時間間隔、およびクリック間の時間(これらの時間はcsvファイルに保存されます)。基本的なアイデアは、私は、プログラムを実行したいウィンドウが開始と停止ボタン(達成)をポップアップ。私は開始を打つことができ、一時停止を押すまでクリックの「ループ」(時間を保存したリストを「反復」する)を実行できるようにしたい。私はあなたがtkinterのメインループの中で別のループを走らせることができないことを知っているので、 'loop'と 'iterate'と言っています。私はクリック間の時間を待つためにroot.afterを使用してみましたが、クリックを実行する関数を呼び出しましたが、root.afterは必要な時間だけ時間をとりません。何か案は?完全なスクリプトを得て、csvファイルのサンプルも提供します。 Tkinterの/他の言語以外の他のモジュールを使用するオープンImは、何もこのエラーが与えられているpython tkinter:かなり時間をかけて反復する方法(root.after not working)
import csv
import time
from tkinter import *
from PyWinMouse import *
root = Tk()
start_button = Button(root, text="start", width="7")
pause_button = Button(root, text="pause", width="7")
start_button.pack()
pause_button.pack()
# holds times for clicks[time_between_up_down, time_between_clicks]
click_info = []
info_length = 0
clicker = Mouse()
paused = True
iterateVar = 0
def get_csv():
global click_info, info_length
file = open("times.csv", 'r')
reader = csv.reader(file, delimiter=",")
for row in reader:
click_info.append(row)
info_length = len(click_info)
def click():
global iterateVar
if iterateVar < (info_length - 1) and paused is False:
clicker.left_down()
time.sleep(click_info[iterateVar][0])
clicker.left_up()
iterateVar += 1
def pause_button_function(event):
global paused
paused = True
def start_button_function(event):
global paused
paused = False
get_csv()
pause_button.bind("<Button-1>", pause_button_function)
start_button.bind("<Button-1>", start_button_function)
root.after(float(click_info[iterateVar][1]), click)
root.mainloop()
あなたの心の中に表示された場合:csvファイルがどのように見えるかの
Traceback (most recent call last):
File
"C:/Users/Owner/PycharmProjects/NaturalHumanBehaviorClickInfoGatherer/ActualClic ker.py", line 52, in <module>
root.after(float(click_info[iterateVar][1]), click)
File "C:\Users\Owner\AppData\Local\Programs\Python\Python35\lib\tkinter\__init__.py", line 604, in after
return self.tk.call('after', ms, name)
_tkinter.TclError: bad argument "1.0223703384399414": must be cancel, idle, info, or an integer
スナップショット(「偽を無視」、それは)他のもののための:
0.0948493480682373,1.0223703384399414,False
0.09569144248962402,0.17647409439086914,False
0.06346511840820312,0.14343690872192383,False
0.09652972221374512,0.08008456230163574,False
0.07996273040771484,0.07998061180114746,False
0.09551239013671875,0.0805819034576416,False
0.08001160621643066,0.04780721664428711,False