首页 > 解决方案 > 使用 python 生成的网页作为 Pygame 控件的输入

问题描述

我目前正在开发一个项目,该项目允许我为多个本地设备提供网页,并将每个客户端用作 Pygame 输入的控件。我很难确定我是否可以在两者(Pygame 和烧瓶)之间传递数据,更不用说使用 async 之类的东西让它们并排运行了。(请注意,我刚刚开始深入研究 python 编程)。如果可以让它们进行通信,我在考虑两种可能发生这种情况的方法。1)使用烧瓶将数据传递给Pygame。2)使用像 Brython 这样的东西通过浏览器在设备上本地运行 python 并使用套接字连接它们。

有可能还是这只是一个白日梦?

谢谢,

标签: pythonhtmlasynchronousflaskpygame

解决方案


这是不可能的。

PyGame 旨在在运行 Python 二进制文件的计算机上渲染图形,而 Flask 旨在生成要发送到远程计算机的 HTML。通过浏览器与远程用户交互的唯一方法是通过 HTML 和 JavaScript。

而且,这没有办法将 PyGame 与 HTML/JS 接口,因为 PyGame 访问本地屏幕、键盘和鼠标的方法与 HTML 与用户交互的方法非常不同。仅举一个主要障碍,PyGame 的基本操作模式是阻塞 UI 线程,直到发生事件(例如鼠标单击),使用函数pygame.event.wait(). 相比之下,在 HTML 中,这是不允许的,您应该为诸如鼠标单击之类的事件注册处理程序。


推荐阅读