考虑这个设置:
主脚本,main.py:
import sys
from PyQt5 import uic
from PyQt5.QtCore import pyqtSlot
from PyQt5.QtWidgets import QApplication, QMainWindow
class MainWindow(QMainWindow):
def __init__(self, parent=None):
super().__init__(parent)
self.ui = uic.loadUi("mw.ui", self)
def on_btnFunc_clicked(self):
print('naked function call')
@pyqtSlot()
def on_btnSlot_clicked(self, bool):
print('slotted function call')
app = QApplication(sys.argv)
win = MainWindow()
win.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
Qt Designer .ui 表单,mw.ui:
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>153</width>
<height>83</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget"> …Run Code Online (Sandbox Code Playgroud)