小编Kef*_*Kef的帖子

QPushButton.clicked() 在使用 .ui 表单自动装配时触发两次

考虑这个设置:

主脚本,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)

python pyqt pyqt5

1
推荐指数
1
解决办法
1074
查看次数

标签 统计

pyqt ×1

pyqt5 ×1

python ×1