⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 windowsched.py

📁 minimal python variant for small footprint apps like embedded apps
💻 PY
字号:
# Combine a real-time scheduling queue and stdwin event handling.# Keeps times in milliseconds.import stdwin, stdwinqfrom stdwinevents import WE_TIMERimport mainloopimport schedimport time# Delay function called by the scheduler when it has nothing to do.# Return immediately when something is done, or when the delay is up.#def delayfunc(msecs):	msecs = int(msecs)	#	# Check for immediate stdwin event	#	event = stdwinq.pollevent()	if event:		mainloop.dispatch(event)		return	#	# Use sleep for very short delays or if there are no windows	#	if msecs < 100 or mainloop.countwindows() == 0:		if msecs > 0:			time.sleep(msecs * 0.001)		return	#	# Post a timer event on an arbitrary window and wait for it	#	window = mainloop.anywindow()	window.settimer(msecs/100)	event = stdwinq.getevent()	window.settimer(0)	if event[0] <> WE_TIMER:		mainloop.dispatch(event)def millitimer():	return time.time() * 1000q = sched.scheduler(millitimer, delayfunc)# Export functions enter, enterabs and cancel just like a scheduler#enter = q.enterenterabs = q.enterabscancel = q.cancel# Emptiness check must check both queues#def empty():	return q.empty() and mainloop.countwindows() == 0# Run until there is nothing left to do#def run():	while not empty():		if q.empty():			mainloop.dispatch(stdwinq.getevent())		else:			q.run()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -