Reputation: 1
I created 2 windows on QT4. In Idle i managed to show Window 1 and adding a closing action once button is clicked. I would like to call and display window 2 by clicking this button. My code is:
import os
import shlex
import sys, Tkinter
#import Converted Python UI File
from W0 import Ui_MainWindow1
If i include from W import Ui_MainWindow2
for calling my 2nd windows, it shows directly my window2 and skip window 1!!
class Main(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
# Button close the window1(would like to show window 2 instead now) .
self.ui.pushButton.clicked.connect(self.close)
def main():
app = QtGui.QApplication(sys.argv)
window = Main()
window.show()
sys.exit(app.exec_())
main()
Upvotes: 0
Views: 236
Reputation: 20353
Try this
from W0 import Ui_MainWindow1
from W import Ui_MainWindow2
class Main1(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.ui = Ui_MainWindow1()
self.ui.setupUi(self)
self.ui.pushButton.clicked.connect(self.close)
class Main2(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.ui = Ui_MainWindow2()
self.ui.setupUi(self)
self.ui.pushButton.clicked.connect(self.close)
def main():
app = QtGui.QApplication(sys.argv)
window1 = Main1()
window1.show()
window2 = Main2()
window2.show()
sys.exit(app.exec_())
main()
Upvotes: 0