我做了一个简单的离屏渲染器头孢Python.
I used cefpython.MessageLoop()
但我想执行一个javascript函数browser.GetFocusedFrame().ExecuteFunction
必须从主 UI 线程调用。
有没有办法在 cefpython 的消息循环上设置回调?
或者我可以使用MessageLoopWork
,但我不知道怎么做。我尝试在单独的线程中调用它,但它不起作用:
import threading
def main_loop():
cefpython.MessageLoopWork()
threading.Timer(0.01, main_loop).start()
threading.Timer(0.01, main_loop).start()
我收到以下错误:
[0324/174806:ERROR_REPORT:context.cc(146)] Check failed: false. called on invalid thread
使用 cefpython.PostTask() 函数将任务发布到各个 CEF 线程上。看:https://code.google.com/p/cefpython/wiki/cefpython#PostTask_(int_threadId,_object_func_[args..])_(void)和第 61 期。它从 31.0 版本开始可用。
wxpython.py 示例展示了如何将计时器与 MessageLoopWork() 和 MessageLoop() 一起使用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)