遇到的问题,使用pyqt5搭界面时,切换到分界面,但是分界面里面的按钮(btn_OpenImage.clicked)没有响应,分界面逻辑层已经单独运行过,没有问题,就是和主界面结合时候出问题,没有响应,各位帮忙看看,下面是主界面逻辑层和其中一个分界面逻辑层
主界面的逻辑文件:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QFrame
import Form_0
from Form_1main import Form1Code #这里增加了!!!!!!
from Form_2main import Form2Code #这里增加了!!!!!!
class MainFormCode(QFrame, Form_0.Ui_Form):
def __init__(self):
super(MainFormCode, self).__init__()
self.setupUi(self)
self.pushButton_1.clicked.connect(self.display1)
self.pushButton_2.clicked.connect(self.display2)
self.ui1 = Form1Code() # 实例化第一个页面
self.ui2 = Form2Code() # 实例化第二个页面
self.ui1.setupUi(self.page_1) # 加载在第一个子控件上
self.ui2.setupUi(self.page_2) # 加载在第二个子控件上
def display1(self):
self.stackedWidget.setCurrentIndex(0)
def display2(self):
self.stackedWidget.setCurrentIndex(1)
if __name__ == '__main__':
app = QApplication(sys.argv)
md = MainFormCode()
md.show()
sys.exit(app.exec_())
第一个分界面逻辑文件:
from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog, QLabel, QFrame, QWidget
from PyQt5.QtGui import QPixmap, QPainter, QPen, QImage
from PyQt5.QtCore import Qt, QRect
import Form_1
import cv2
import math
import numpy as np
import copy
class Form1Code(QFrame, Form_1.Ui_Form1):
def __init__(self):
super(Form1Code, self).__init__()
self.setupUi(self)
self.btn_OpenImage.clicked.connect(self.openImage)
def openImage(self):
files, _ = QFileDialog.getOpenFileName(self, '打开图片', './', "Images (*.png *.jpg *.bmp)")
if files:
self.img = cv2.imread(files)
if self.img is not None:
pixmap = self.cvToPixmap(self.img)
self.lbl_ShowImage.setPixmap(pixmap)