Доброго времени суток всем форумчанам!
ОЧЕНЬ НУЖНА ПОМОШЬ!!!!!!!!!!
Я начинающий программист. Изучаю Питон. С помощью Qt Designer я создал два окна. Первое окно содержит кнопку «Переход ко 2 окну», при нажатии на которую должно открываться второе окно. Но опыта мне не хватает и поэтому пока всё, что я смог сделать – это то, что при нажатии на кнопку в консоли выводится сообщение «Была нажата кнопка Переход ко 2 окну».
Подскажите мне, что надо делать чтобы при нажатии на кнопку «Переход ко 2 окну» открывалось второе окно?
Исходный код и картинки прилагаю.
Заранее благодарю всех!!!
Python
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(342, 151)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.label = QtWidgets.QLabel(self.centralwidget)
self.label.setGeometry(QtCore.QRect(110, 20, 171, 51))
font = QtGui.QFont()
font.setPointSize(20)
self.label.setFont(font)
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(80, 70, 231, 41))
font = QtGui.QFont()
font.setPointSize(16)
self.pushButton.setFont(font)
self.pushButton.setObjectName("pushButton")
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 342, 21))
self.menubar.setObjectName("menubar")
self.menu = QtWidgets.QMenu(self.menubar)
self.menu.setObjectName("menu")
MainWindow.setMenuBar(self.menubar)
self.action = QtWidgets.QAction(MainWindow)
self.action.setObjectName("action")
self.menu.addAction(self.action)
self.menubar.addAction(self.menu.menuAction())
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "Первое окно"))
self.label.setText(_translate("MainWindow", "Первое окно"))
self.pushButton.setText(_translate("MainWindow", "Переход ко 2 окну"))
self.menu.setTitle(_translate("MainWindow", "Текст"))
self.action.setText(_translate("MainWindow", "Изменить"))
def my_test_on_click():
print("Была нажата кнопка Переход ко 2 окну")
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
ui.pushButton.clicked.connect(my_test_on_click)
sys.exit(app.exec_())
Python
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(338, 154)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.label = QtWidgets.QLabel(self.centralwidget)
self.label.setGeometry(QtCore.QRect(100, 30, 171, 41))
font = QtGui.QFont()
font.setPointSize(20)
self.label.setFont(font)
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(50, 90, 271, 41))
font = QtGui.QFont()
font.setPointSize(16)
self.pushButton.setFont(font)
self.pushButton.setObjectName("pushButton")
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "Второе окно"))
self.label.setText(_translate("MainWindow", "Второе окно"))
self.pushButton.setText(_translate("MainWindow", "Венуться в первое окно"))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
Python
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
этот твой код создает и показывает окно, тебе надо написать аналогичное (для начала можешь даже просто скопипастить)
Спасибо!
Но теперь следующая проблема. Второе окно появляется, но сразу же исчезает. Как мне сделать, чтобы второе окно НЕ ИСЧЕЗАЛО, а становилось АКТИВНЫМ?
Заранее благодарю!!!
Python
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
этот твой код создает и показывает окно, тебе надо написать аналогичное (для начала можешь даже просто скопипастить)
Уппсс!!!
При копипасте, при нажатии на кнопку вызывается НЕ ВТОРОЕ, а ПЕРВОЕ окно.
И оно резко исчезает.
Не получилось.
Может быть чего-то не хватает?
Python
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
этот твой код создает и показывает окно, тебе надо написать аналогичное (для начала можешь даже просто скопипастить)
Уппсс!!!
При копипасте, при нажатии на кнопку вызывается НЕ ВТОРОЕ, а ПЕРВОЕ окно.
И оно резко исчезает.
Не получилось.
Может быть чего-то не хватает?
Исправил. При нажатии на кнопку, появляется второе окно.
Но осталась проблема с тем, что оно ИСЧЕЗАЕТ!
Чего не хватает?
Или подскажите видео или сайт, который показывает как это сделать ПОШАГОВО.
Заранее благодарю!