将 PyQt UI 作为 python 文件和作为 ui 文件有什么区别?

What is the difference between making a PyQt UI as a python file and as a ui file?

我们可以使用qt designer来创建pyqt或pysideUI。

例如) exUI.py

MainWindow.setObjectName("MainWindow")
MainWindow.resize(484, 371)
self.centralWidget = QtWidgets.QWidget(MainWindow)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Maximum)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)

例)exUI.ui(或XML)

<widget class="QMainWindow" name="MainWindow">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>484</width>
    <height>371</height>
   </rect>
  </property>
  <property name="windowTitle">

使用 qt 设计器创建 ui 时,会创建一个 ui 文件作为输出。

还有一些函数可以将 ui 更改为 python 文件。但我很好奇你为什么把它改成 python 文件。

一个ui文件可以轻松写成ui,为什么要改回python文件不方便呢?

不是每个人都使用这种方法,但有些人使用。我想知道使用不同的文件扩展名是否有区别。

假设 ui 在 ui 文件和 python 文件时表现不同,我想知道 PySide 和 PyQt 是否都不同。

TL;博士;两者一般都是equi价形式。


.ui 只是一个 XML,它具有创建小部件的设置(小部件类型、几何形状等),也就是说,Qt 开发了该格式,以便用户可以使用 QtDesigner 工具快速轻松地设计 GUI。

那个.ui是通过其他方法解析生成创建GUI的代码。此解析可以是静态的(使用 uic 或 pyuic)或动态的(使用 loadUi、loadUiType、QUiLoader 等)。

使用一种或另一种方法取决于开发人员,例如,如果 .ui 通过动态方法使用,那么 IDE 将很难帮助自动完成。

总之,没有区别,因为最终.ui被转换为代码。但是 PyQt 和 PySide 转换为代码的方式可能有所不同,因为每个公司都可以采用某些默认设置。

使用 .ui 的一个缺点是它显然需要一些时间来解析和创建动态对象,而且您不会从 [= 的大多数现代版本中预编译 .py 代码中受益。 23=],但总的来说,那个时间成本是最小的。

为我创建 python 文件的主要原因是将所述文件集成到我的 IDE (Intellij IDEA)。
转换后我可以有自动补全,跳转到定义等诸多使用好处..