У меня есть форма и всплывающая форма, как указано ниже (частичный код):
import sys
import subprocess
import os
from PyQt4 import QtCore, QtGui
from ui_auto import Ui_Form
from popup_ui import Ui_Form as fm
class MyPopupForm(QtGui.QWidget):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = fm()
self.ui.setupUi(self)
class MyForm(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Form()
self.ui.setupUi(self)
def when_pressed(self):
self.mypopup=MyPopupForm()
self.mypopup.show()
def when_stopped(self):
self.mypopup=MyPopupForm()
self.mypopup.show()
Myform - моя основная форма, а MyPopupForm - всплывающая форма. Мне нужно сделать так, чтобы, когда я нажимал кнопку, он печатал какую-то строку и отображал эту строку. Когда я нажимаю другую кнопку, я должен вызвать ту же форму, но с другой строкой. Как я мог это сделать (я использовал Qtdesigner для создания пользовательского интерфейса)
MyPopupForm код в Python:
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'popup.ui'
#
# Created: Sun Jan 8 11:18:43 2012
# by: PyQt4 UI code generator 4.7.3
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(207, 170)
self.pushButton = QtGui.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(60, 120, 92, 27))
self.pushButton.setObjectName("pushButton")
self.label = QtGui.QLabel(Form)
self.label.setGeometry(QtCore.QRect(58, 30, 81, 41))
#self.label.setText("")
self.label.setObjectName("label")
self.retranslateUi(Form)
QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL("clicked()"), Form.close)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
Form.setWindowTitle(QtGui.QApplication.translate("Form", "Form", None, QtGui.QApplication.UnicodeUTF8))
self.pushButton.setText(QtGui.QApplication.translate("Form", "OK", None, QtGui.QApplication.UnicodeUTF8))