当我从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_())