从QMainWind打开对话框

2024-05-19 02:09:55 发布

您现在位置:Python中文网/ 问答频道 /正文

当我在主窗口中按下按钮时,我无法打开一个小对话框窗口。我知道如何创建一个需要打开的窗口(我们称之为“编辑窗口”),但从主窗体调用(打开)它和另一个模块是另一回事。在

主窗口正在显示,正在工作。所有的导入都很好,sqlite连接工作正常。基本上,程序结束了,只剩下这个对话框。。。它应该有QMainWindow作为其父级。在

#!/usr/bin/python
#encoding=utf8
import sys
from PyQt4 import QtCore, QtGui
from gui import Ui_glavni
from dialog import Ui_Dialog
import snimanje #imported modules
import clear
import pretraga
import izmena #this should represent module with custom made dialog.


class Prozor(snimanje.Snimi, clear.Brisanje, pretraga.Pretraga,QtGui.QMainWindow):
    def __init__(self,parent=None):
        QtGui.QWidget.__init__(self,parent)
        self.ui=Ui_glavni()
        self.ui.setupUi(self)
        QtCore.QObject.connect(self.ui.dugmeSnimi, QtCore.SIGNAL("clicked()"), self.snimi)
        QtCore.QObject.connect(self.ui.dugmeOtkazi, QtCore.SIGNAL("clicked()"), self.brisanjeUnos)
        QtCore.QObject.connect(self.ui.dugmeOtkazi2, QtCore.SIGNAL("clicked()"), self.brisanjeListanje)
        QtCore.QObject.connect(self.ui.dugmeTrazi, QtCore.SIGNAL("clicked()"), self.pretraga)
        QtCore.QObject.connect(self.ui.checkJedinica, QtCore.SIGNAL("stateChanged(int)"), self.aktivJedinica)
        QtCore.QObject.connect(self.ui.checkVrednost, QtCore.SIGNAL("stateChanged(int)"), self.aktivVrednost)
        QtCore.QObject.connect(self.ui.menjaIme, QtCore.SIGNAL("clicked()"), izmena.dijalog)
        QtCore.QObject.connect(self.ui.dugmeBrisi, QtCore.SIGNAL("clicked()"), self.brisanjeIzBaze)
#SREDI IZMENU. SREDI PROVERU UNETIH U BAZU PO BROJU PREDMETA


        def startup():
            self.brisanjeUnos()
            self.brisanjeListanje()
            self.provera()

        startup()

    def aktivJedinica(self):
        self.ui.lineJedinica.setEnabled(False)
        self.ui.lineJedinica.setText("")
        self.ui.checkJedinica.checkStateSet()
        if self.ui.checkJedinica.isChecked():
            self.ui.lineJedinica.setEnabled(True)
            #self.ui.checkJedinica.setEnabled(False)

    def aktivVrednost(self):
        self.ui.vrednost.setEnabled(False)
        self.ui.vrednost.setText("")
        if self.ui.checkVrednost.isChecked():
            self.ui.vrednost.setEnabled(True)

    def pretraga(self):
        if self.ui.radioIme.isChecked():
            self.pretragaIme()
        elif self.ui.radioBrPr.isChecked():
            self.pretragaBrPr()
        else:
            self.pretragaSudski()



if __name__=="__main__":
    program = QtGui.QApplication(sys.argv)
    mojprogram = Prozor()
    mojprogram.show()
    sys.exit(program.exec_())

Tags: importselfuisignalifdefconnectqtgui

热门问题