pyqt 两个窗口传值问题,pyqt两个窗口,背景描述:A窗口中存在一


背景描述:
A窗口中存在一个IP输入框lineEdit,一个提交按钮pushbutton,点击提交按钮则打开B窗口,并传递输入的ip_add地址字符串给B窗口。
B窗口代码中包含登陆数据库语句。

预期目标:
接收A窗口提交过来的ip_add变量,进行登陆数据库,打印登陆是否成功的提示。

存在问题:
目前是点击提交按钮,可以成功打开B窗口,但不知道怎么将变量值(ip_add)传递给第二个窗口。
本人是新手,请大家帮忙看看,有什么办法进行处理?
即:将下面A.py中的ip_add与B.py中的host_ip对等起来。
附:
A窗口基本处理语句:

# A.py# -*- coding: utf-8 -*- import sysfrom PyQt4.QtCore import *from PyQt4.QtGui import *from Ui_1 import Ui_Formimport Bclass Form(QWidget, Ui_Form):    def __init__(self, parent=None):        super(Form, self).__init__(parent)        self.setupUi(self)    def on_pushButton_clicked(self):        global ip_add        self.w2=B.Dialog()        ip_add=self.lineEdit.text()        self.w2.show()if __name__ == "__main__":    app = QApplication(sys.argv)    myapp = Form()    myapp.show()    sys.exit(app.exec_())

B窗口基本处理语句:

# B.py# -*- coding: utf-8 -*- import sysfrom PyQt4.QtCore import *from PyQt4.QtGui import *from Ui_2 import Ui_Dialogimport A class Dialog(QDialog, Ui_Dialog):    def __init__(self, parent=None):        super(Dialog, self).__init__(parent)        self.setupUi(self)        conn = pymssql.connect(host=host_ip, database='db_name', user='db_user', password='db_pw')        .........#其他处理部分     if __name__ == "__main__":    app = QApplication(sys.argv)    myapp = Dialog()    myapp.show()    sys.exit(app.exec_())

编橙之家文章,

评论关闭