Python中如何用Py写桌面程序?

null
Python中如何用Py写桌面程序?

53 回复

貌似用 Py 写很麻烦。


用Py写桌面程序,主流选择是Tkinter、PyQt/PySide和wxPython。Tkinter是Python标准库,适合简单应用;PyQt功能强大但需要处理许可协议;wxPython提供原生外观。这里给你一个Tkinter的完整例子:

import tkinter as tk
from tkinter import ttk, messagebox

class SimpleApp:
    def __init__(self, root):
        self.root = root
        self.root.title("桌面程序示例")
        self.root.geometry("400x300")
        
        # 创建标签
        self.label = ttk.Label(root, text="输入一些内容:")
        self.label.pack(pady=10)
        
        # 创建输入框
        self.entry = ttk.Entry(root, width=30)
        self.entry.pack(pady=5)
        
        # 创建按钮
        self.button = ttk.Button(root, text="点击我", command=self.on_button_click)
        self.button.pack(pady=10)
        
        # 创建文本框用于显示
        self.text = tk.Text(root, height=10, width=40)
        self.text.pack(pady=10)
    
    def on_button_click(self):
        user_input = self.entry.get()
        if user_input:
            self.text.insert(tk.END, f"你输入了: {user_input}\n")
            self.entry.delete(0, tk.END)
        else:
            messagebox.showwarning("警告", "请输入一些内容")

if __name__ == "__main__":
    root = tk.Tk()
    app = SimpleApp(root)
    root.mainloop()

这段代码创建了一个带输入框、按钮和显示区域的简单桌面应用。运行后会显示窗口,输入内容点击按钮会在下方文本区域显示输入历史。Tkinter虽然界面简单,但胜在无需额外安装,适合快速开发小型工具。

对于更复杂的应用,建议看看PyQt,它的界面更现代。

特别是话界面时候

pyqt 拿工具画过

Qt Designer: excuse me?

写过
N 年前,pygtk

然后呢……

#4 要转换格式吧

#6 需要自行写代码布局。

#4 要是能像 C#一样拖动控件就好了

#6 有界面设计器嘛 wxformbuilde ?

#11 又是写代码布局啊 烦人。

#13 这是、。。。。

最讨厌的就是写代码布局了

#5 用过。感觉。。。。。。

gtk3 可以使用 glade 设计界面,https://glade.gnome.org/

http://debuggerx.ddns.net:8888/upload/20170526173131.png

pycharm+python3.5+pyqt5+qt creator
简易的三消小游戏地图拖拽编辑器,初版,不忍直视。。
还可以用 pyinstaller 打包成 windows 下直接运行的 exe 程序

不是应该用手指吗?为什么要用 py😂

只记得当初用 java 写练手项目学生选课系统,纯撸布局代码

pyqt 是个好选择,如果你不介意它的协议。以前一直用自带的 tkinter,手动布局太累了,而且有很多坑。现在用 pyside,与 pyqt 类似,但是协议比较宽松。

所以你想表达什么?

pyside pyqt

简单一点的程序用 wxpython + wxformbuilder + cx_freeze, 界面比 tkinter 好看点,但还是比较丑,google driver 终端是用 wxpython 写的

复杂一点的程序用 pyqt/pyside + qt designer + cx_freeze, Anki/Calibre/Dropbox 终端是用 PyQt 写的

现在写桌面程序是不是大部分都会用 Web 技术来写,再包一个壳?

基于浏览器

基于浏览器哈哈哈哈,flask 写个后端,界面用 html+css,双击程序之后运行 webserver 并打开浏览器……

总感觉是时候发一波广告: https://github.com/cosven/feeluown

还是 electron 吧

用过 pyqt 给自己的加密解密程序做界面🤔🤔🤔

玩玩,或者写插件的时候需要用还可以
写正常的东西还是算了吧……

pyqt 啊,写过两个 GUI。选了很久最终确定的

pySide/pyQt 还不错啊,写写小程序挺方便的,尤其是用 Style Sheets 修改控件的属性

公司有个同事用 Python 写 gui,界面确实丑,不过工具实用

用过 PyQt,挺方便的,就是资源少,有些问题查不出原因。推荐用 Electron。

上个月刚用 pyqt 写过一个很简陋的,感觉还好吧,资料少确实是个问题,碰到问题了根本查不到,官方文档还只贴了个 c++的链接

写过 2 个小的程序。。一个是 win 下的 python 和 pygtk,另外一个是 linux 下的,也是 pygtk,设计的时候用到了 glade

python 貌似真心不适合写桌面程序…内嵌个 webkit 简直爽爆了…前段时间写一个项目,用 py 画 win 的桌面窗体 尝试过 pyside、pyqt、wxpython、tkinter…差点有种放弃 windows 的冲动 这画出来的都是什么玩意儿…[捂脸]

PyQt 写小工具很方便

屁眼》》》》》

剛剛寫完一個 pyqt+qml 的程序,我表示再也不想用 qt 這玩意寫界面了

写桌面软件还是试试 aardio 吧,小巧方便,生成的软件体积小不用带运行库,做界面漂亮漂亮很漂亮,用起来像 python,而且可以嵌入 python 代码,几句代码就可以写个 webkit 壳子,支持 PHP 类似的模板语法,可以直接调用 C,C++的接口,可以直接调用.Net, Java 中的组件函数等等,还可以用来编译 kotlin、直接执行语言代码

我用 pyqt+pyqtgraph 写了一个股票交易软件

参考用 python3 + qt5 + matplotlib 的一个范例:
https://github.com/ChenYingChou/py-qt5-sample

毕设用的 PyQt。感觉如果以前学过 Qt 的话,可以基本无痛转过来。毕设写了好久还没写完,明天还得继续写……

至于是怎么写的,用的是 PyCharm,界面用 designer 拖,完了就写一个脚本把他们转成 python 源码。库方面,用了 pyshark, pyqtgraph, pony orm。

qt designer 的简易程度都快赶上 visual basic 了
拖完之后 PyQt5.uic.loadUi()就行,还要怎么简单

请问一下这样做是如何解决补全问题的?

回到顶部