Hi Guys,
I am new to pyqt, I try two qt designer files one is main window
second sub window,
Load main window click button open new window <allow things to happen>
user clicks exit on that window close sub window return to main window
I am tried with Form.close , window.deletelater Not working for me. I
have attached my code please guide me guys.
http://pastebin.com/UnHS0NRn
-Dhanasekaran.
Did I learn something today? If not, I wasted it.
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'window_process.ui'
#
# Created: Mon Jun 11 15:20:34 2012
# by: PyQt4 UI code generator 4.7.2
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui
class sub_window(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(363, 188)
self.pushButton = QtGui.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(22, 120, 121, 31))
self.pushButton.setObjectName("pushButton")
self.pushButton_2 = QtGui.QPushButton(Form)
self.pushButton_2.setGeometry(QtCore.QRect(240, 120, 93, 31))
self.pushButton_2.setObjectName("pushButton_2")
self.label = QtGui.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 50, 141, 31))
self.label.setObjectName("label")
self.retranslateUi(Form)
QtCore.QObject.connect(self.pushButton_2, QtCore.SIGNAL("clicked()"), Form.close)
QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL("clicked()"), self.dosumfuction)
QtCore.QMetaObject.connectSlotsByName(Form)
def dosumfuction(self):
print "Doing sum fuction"
print "Function finished"
print "But window did not close How to close sub window"
def retranslateUi(self, Form):
Form.setWindowTitle(QtGui.QApplication.translate("Form", "subwindow", None, QtGui.QApplication.UnicodeUTF8))
self.pushButton.setText(QtGui.QApplication.translate("Form", "Do sum function", None, QtGui.QApplication.UnicodeUTF8))
self.pushButton_2.setText(QtGui.QApplication.translate("Form", "Quit", None, QtGui.QApplication.UnicodeUTF8))
self.label.setText(QtGui.QApplication.translate("Form", "subwindow", None, QtGui.QApplication.UnicodeUTF8))
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(407, 258)
self.pushButton = QtGui.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(40, 170, 131, 31))
self.pushButton.setObjectName("pushButton")
self.pushButton_2 = QtGui.QPushButton(Form)
self.pushButton_2.setGeometry(QtCore.QRect(300, 170, 93, 31))
self.pushButton_2.setObjectName("pushButton_2")
self.label = QtGui.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 60, 171, 51))
self.label.setObjectName("label")
self.retranslateUi(Form)
QtCore.QObject.connect(self.pushButton_2, QtCore.SIGNAL("clicked()"), Form.close)
QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL("clicked()"), self.opensubwindow)
QtCore.QMetaObject.connectSlotsByName(Form)
def opensubwindow(self):
print "Subwindow starts"
self.Form = QtGui.QWidget()
self.sub_window1 = sub_window()
self.sub_window1.setupUi(self.Form)
self.Form.show()
def retranslateUi(self, Form):
Form.setWindowTitle(QtGui.QApplication.translate("Form", "Form", None, QtGui.QApplication.UnicodeUTF8))
self.pushButton.setText(QtGui.QApplication.translate("Form", "Open New Window", None, QtGui.QApplication.UnicodeUTF8))
self.pushButton_2.setText(QtGui.QApplication.translate("Form", "close", None, QtGui.QApplication.UnicodeUTF8))
self.label.setText(QtGui.QApplication.translate("Form", "Main Window", None, QtGui.QApplication.UnicodeUTF8))
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
Form = QtGui.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())
_______________________________________________
PyQt mailing list [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt