1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
import sys
from PyQt5 import QtCore, QtGui
from PyQt5.QtWidgets import QWidget, QApplication, QLineEdit, QPushButton, QLabel
from PyQt5.QtCore import pyqtSignal, QObject
##################################""""
class MyNewSignal(QObject):
mySignal = pyqtSignal()
class SecondWindow(QWidget):
def __init__(self, parent = None):
super().__init__()
self.parent = parent
self.setWindowTitle("deuxieme fenetre")
self.setWindowModality(2)
self.btn2 = QPushButton("Transfer", self)
self.btn2.setGeometry(100, 150, 200, 50)
self.btn2.clicked.connect(self.transfer_valeurs)
self.signal_class = MyNewSignal()
self.signal_class.mySignal.connect(self.retrieveValues)
self.textbox2 = QLineEdit(self)
self.textbox2.setGeometry(100, 50, 200, 50)
def retrieveValues(self):
x = self.textbox2.text()
self.mainWindow = MyPrincipalWindow()
self.mainWindow.textbox1.setText(x)
def transfer_valeurs(self):
self.signal_class = MyNewSignal()
self.signal_class.mySignal.emit()
class MyPrincipalWindow(QWidget):
def __init__(self, parent = None):
super().__init__()
self.parent = parent
self.setWindowTitle("Ma fenetre principal")
self.setFixedSize(700, 500)
self.btn1 = QPushButton("Afficher deuxieme fenetre", self)
self.btn1.clicked.connect(self.afficherFenetre)
self.btn1.setGeometry(250,300,250,75)
self.textbox1 = QLineEdit(self)
self.textbox1.setGeometry(250,50,200,50)
def afficherFenetre(self):
self.save = SecondWindow(self)
self.save.show()
if __name__=="__main__":
app = QApplication(sys.argv)
fen = MyPrincipalWindow()
fen.show()
app.exec() |
Partager