Python Forum

Full Version: New window
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello, i have problem with qtpy.

from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QFileDialog
from s import CheckWindow
from ss import MainWindow
import sys


class FirstWindow(CheckWindow):
    """
    Switching window1 (start window) to window2 (which is MainWindow).
    """
    def __init__(self, window1):
        self.setupUi(window1)
        self.pushButton_2.clicked.connect(self.selectFile)

    def selectFile(self):
        text = QFileDialog.getOpenFileName()
        print(text)
        if text[0]:
            f = open(text[0], 'r')

            with f:
                data = f.read()
                print(data)


class MainInterface(MainWindow):
    """

    """
    def __init__(self, mwindow2):
        self.setupUi(mwindow2)
        self.pushButton_2.clicked.connect(self.test)

    def test(self):
        print("działa")


if __name__ == '__main__':
    """
    Show window1 (start window).
    """
    app = QtWidgets.QApplication(sys.argv)
    window1 = QtWidgets.QMainWindow()
    ui = CheckWindow()
    ui.setupUi(window1)
    window1.show()
    FirstWindow = FirstWindow(window1)
    sys.exit(app.exec_())
from PyQt5 import QtCore, QtGui, QtWidgets
from ss import *
# from dfg import MainInterface


class CheckWindow(object):
    def ok(self):
        self.window = QtWidgets.QMainWindow()
        self.ui = MainWindow()
        self.ui.setupUi(self.window)
        self.window.show()
#        sec = MainInterface(self.window)

    def setupUi(self, MainWindow):
        MainWindow.setObjectName("Gnuplot")
        MainWindow.resize(247, 319)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(70, 220, 111, 31))
        self.pushButton.setObjectName("pushButton")
        self.pushButton.clicked.connect(self.ok)
        self.checkBox = QtWidgets.QCheckBox(self.centralwidget)
        self.checkBox.setGeometry(QtCore.QRect(70, 90, 101, 23))
        self.checkBox.setObjectName("checkBox")
        self.comboBox = QtWidgets.QComboBox(self.centralwidget)
        self.comboBox.setGeometry(QtCore.QRect(70, 50, 101, 33))
        self.comboBox.setObjectName("comboBox")
        self.comboBox.addItem("")
        self.comboBox.addItem("")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(70, 190, 111, 33))
        self.pushButton_2.setObjectName("pushButton_2")
        self.checkBox_2 = QtWidgets.QCheckBox(self.centralwidget)
        self.checkBox_2.setGeometry(QtCore.QRect(70, 110, 101, 23))
        self.checkBox_2.setObjectName("checkBox_2")
        self.verticalLayoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.verticalLayoutWidget.setGeometry(QtCore.QRect(30, 30, 181, 121))
        self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        MainWindow.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushButton.setText(_translate("MainWindow", "next"))
        self.checkBox.setText(_translate("MainWindow", "Errorbars X"))
        self.comboBox.setItemText(0, _translate("MainWindow", "one plot"))
        self.comboBox.setItemText(1, _translate("MainWindow", "two plots"))
        self.pushButton_2.setText(_translate("MainWindow", "select file"))
        self.checkBox_2.setText(_translate("MainWindow", "Errorbars Y"))
from PyQt5 import QtCore, QtGui, QtWidgets


class MainWindow(object):

   # def test(self):
   #     print("działa")

    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 505)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushBut = QtWidgets.QPushButton(self.centralwidget)
        self.pushBut.setGeometry(QtCore.QRect(340, 290, 88, 33))
        self.pushBut.setObjectName("pushButton")
        self.radioButton = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton.setGeometry(QtCore.QRect(230, 160, 98, 23))
        self.radioButton.setObjectName("radioButton")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(460, 180, 88, 33))
        self.pushButton_2.setObjectName("pushButton_2")
    #    self.pushButton_2.clicked.connect(self.test)
        MainWindow.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushBut.setText(_translate("MainWindow", "llllklkjl"))
        self.radioButton.setText(_translate("MainWindow", "RadioButton"))
        self.pushButton_2.setText(_translate("MainWindow", "PushButton"))
first the Check Window window opens and I can modify it in the FirstWindow class, but later when the MainWindow window opens, I would like me to modify it using the MainInterface class. The problem is that I do not know where and how I should call the MainInterface class object to run the "test" please help