很多人都吐槽,使用 Tkinter、PyQt5等工具制作出来的图形界面程序太丑了。既然觉得它丑,我们来想想,它为什么会那么丑。
文章目录
功能性是开发的第一要务
模块提供的都是原生组件
界面的美化的几个关键点
功能性是开发的第一要务
每一个 Python 图形界面库都有它自有的功能特性和界面特性。一般来说,这些库的开发者着重要考虑的是功能性的实现。比如、列表框、拖拽框、悬浮框、自定义控件、webview等。
一个图形界面库,受不受开发者的欢迎,首先在于它提供的功能是否全面和强大。
如果仅仅是炫酷和好看,如果功能上有所缺失,其应用也只能在小范围和特定领域内得到拥簇。会导致一种“初遇时惊艳,永久后坑多”的状态。
模块提供的都是原生组件
为了便于理解,我们在这里把桌面图形界面的开发(以PyQt5为例)和Web前端开发进行一下不严谨的关联对应。
PyQt5 中的各种控件(QPushButton、QLineEdit、QCheckBox等)对应于 HTML 中的各类元素标签( 、
、 ),用于基础结构的编排。
PyQt5 中的 QSS 对应于 HTML 中的 CSS,用于对样式的控件。
PyQt5 中的信号槽 对应于 HTML 中的 JavaScript,用于对行为交互的控制。
在不引入任何 CSS 和 JavaScript 的情况下,HTML 中编写的任何标签,在浏览器中显示的都是最原始的形状和样式。
州的先生
一个按钮
一个选