从QMainWindow打开一个对话框

时间:2012-06-27 21:26:46

标签: python dialog pyqt mainwindow

当我从MainWindow按下按钮时,打开一个小对话框窗口时遇到问题。我知道如何制作一个我需要打开的窗口(让它称之为EDIT WINDOW),但是从Main窗体调用(打开)它,另一个模块则是另一个故事。

主窗口正在显示并正常工作。所有导入都很好,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_())

0 个答案:

没有答案