2024-06-07 13:50:29 发布
网友
这个问题更多的是关于方法论。
我想创建一个Python桌面应用程序,但我不希望它的GUI像tkinter或像PyQt那样。我更喜欢有一个漂亮而现代的客户端GUI,比如引导程序。
有没有用Python创建此类应用程序的现有API?
如果不是:使用某个Python服务器(如Django或web2py)并在每次用户启动应用程序时启动一个新服务器,仅仅是为了使应用程序核心在Python中,而客户端在HTML中,这听起来是一个明智的解决方案吗? 有人这样工作吗?
有一个本地服务器来完成你的GUI工作是有价值的,这是否适用于你的情况很大程度上取决于应用程序的需求。 我编写的大多数应用程序都倾向于最终成为多用户和托管的习惯,所以对我来说,这样开始绝对有意义。
如果你沿着这条路走下去,也可以看看http://brython.info/,在任何东西上使用相同的语言都可以减少大脑上下文切换的“开销”(请原谅双关语)。
使用PyQt或PySide 2、Qt WebEngine和Qt的内置支持托管HTML应用程序:
http://doc.qt.io/qt-5/qtwebchannel-index.html
一般的架构是一个SPA(单页应用程序),它从本地HTML和Javascript内容中运行,这些内容与你的应用程序捆绑在一起——不需要捆绑在web服务器上。
对于任何复杂的事情(比如绕过跨源代码问题),使用Qt网络通道向Python端构建的功能发送消息。
这基本上和科尔多瓦使用的建筑相同。
现在,您是否应该用这种方式构建应用程序(咳嗽QML咳嗽)是一个完全不同的话题。
有一个本地服务器来完成你的GUI工作是有价值的,这是否适用于你的情况很大程度上取决于应用程序的需求。 我编写的大多数应用程序都倾向于最终成为多用户和托管的习惯,所以对我来说,这样开始绝对有意义。
如果你沿着这条路走下去,也可以看看http://brython.info/,在任何东西上使用相同的语言都可以减少大脑上下文切换的“开销”(请原谅双关语)。
使用PyQt或PySide 2、Qt WebEngine和Qt的内置支持托管HTML应用程序:
http://doc.qt.io/qt-5/qtwebchannel-index.html
一般的架构是一个SPA(单页应用程序),它从本地HTML和Javascript内容中运行,这些内容与你的应用程序捆绑在一起——不需要捆绑在web服务器上。
对于任何复杂的事情(比如绕过跨源代码问题),使用Qt网络通道向Python端构建的功能发送消息。
这基本上和科尔多瓦使用的建筑相同。
现在,您是否应该用这种方式构建应用程序(咳嗽QML咳嗽)是一个完全不同的话题。
相关问题 更多 >
编程相关推荐