有没有非疯狂人士制作的跨平台Python窗口工具包?

-2 投票
5 回答
726 浏览
提问于 2025-04-16 11:02

也许“疯狂”这个词用得有点重,但我想问的是,是否有一些窗口工具包,不需要我这样做:

class MyApp(SomeWindowClass):

我真的不想使用一个由某个对对象过于痴迷的人制作的库,因为他们认为应用程序应该有一个类(而且这个类只会有一个实例,所以我不明白为什么还要多打这些代码)。
(顺便说一下,我并不是想冒犯那些同意这些库设置的人,我只是想知道有没有一些对象少一点的选择)

5 个回答

2

Tkinter每个窗口或对话框都有一个对象,而不是整个应用程序,并且不需要使用类就能在屏幕上显示东西。不过,它确实有自己的主循环(就像其他所有图形用户界面库一样)。下面是一个必不可少的“你好,世界”示例:

from Tkinter import *
root = Tk()    
w = Label(root, text="Hello, world!")
w.pack()    
root.mainloop()
5

这里有一个叫做 PyQT 的东西。

11

一般来说,图形用户界面(GUI)工具包依赖于一个事件循环在运行。这个工具包里的应用程序类通常负责这个事件循环,并处理来自底层窗口管理器的事件。虽然他们可以把这个类叫做事件循环管理器之类的,但无论如何你都需要这个功能,所以这只是个命名的问题。不过,有些工具包在使用事件时,有时也可以不使用事件循环,这种情况下你肯定不希望它是自动进行的。

撰写回答