简体   繁体   English

PyQt4在.py文件之间共享QLineEdit变量

[英]PyQt4 sharing QLineEdit variable across .py files

I want to pass self.user = QtGui.QLineEdit(MainWindow) variable from Login.py to officer = str(self.tocomb.currentText()) in ingooi.py 我想将Login.py中的self.user = QtGui.QLineEdit(MainWindow)变量传递给ingooi.py中的Officer = str(self.tocomb.currentText())

My 3 GUI windows 我的3个GUI窗口

My program consists of various files where I import the classes from other files as needed. 我的程序包含各种文件,可根据需要从其他文件中导入类。

The 3 main files consists of : 3个主要文件包括:

  1. Login.py ( My Login window where user logs in ) Login.py(用户登录的“我的登录”窗口)
  2. page22.py ( User selects to enter/view data ) page22.py(用户选择输入/查看数据)
  3. ingooi.py ( User enters data then adds the data to access database via Submit Button ingooi.py(用户输入数据,然后通过“提交”按钮添加数据以访问数据库

Please see the code for these 3 main files below. 请在下面查看这3个主要文件的代码。

Login.py Login.py

from PyQt4 import QtCore, QtGui
from ingooi import Ui_NextPage
from page22 import Ui_Page1
import pypyodbc


try:
_fromUtf8 = QtCore.QString.fromUtf8  
except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig,   
_encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)

class Ui_Logged(object):

def setupUi(self, MainWindow):
    MainWindow.setObjectName(_fromUtf8("MainWindow"))
    MainWindow.resize(389, 235)
    self.centralwidget = QtGui.QWidget(MainWindow)
    self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
    self.Login_button = QtGui.QPushButton(self.centralwidget)
    self.Login_button.setGeometry(QtCore.QRect(90, 150, 75, 23))    
    self.Login_button.setObjectName(_fromUtf8("Login_button"))


    self.user = QtGui.QLineEdit(MainWindow)


    self.user.setGeometry(QtCore.QRect(100, 30, 113, 20))
    self.user.setObjectName(_fromUtf8("user"))

    self.password = QtGui.QLineEdit(MainWindow)        
    self.password.setGeometry(QtCore.QRect(100, 70, 113, 20))
    self.password.setObjectName(_fromUtf8("password"))
    self.password.setEchoMode(QtGui.QLineEdit.Password)       
    self.user_label = QtGui.QLabel(self.centralwidget)
    self.user_label.setGeometry(QtCore.QRect(30, 30, 46, 13))
    self.user_label.setObjectName(_fromUtf8("user_label"))       
    self.Password_label = QtGui.QLabel(self.centralwidget)
    self.Password_label.setGeometry(QtCore.QRect(30, 70, 46, 13))
    self.Password_label.setObjectName(_fromUtf8("Password_label"))     
    self.status_label = QtGui.QLabel(self.centralwidget)
    self.status_label.setGeometry(QtCore.QRect(100, 110, 121, 16))   
    self.status_label.setText(_fromUtf8(""))    
    self.status_label.setObjectName(_fromUtf8("status_label"))
    MainWindow.setCentralWidget(self.centralwidget)
    self.menubar = QtGui.QMenuBar(MainWindow)
    self.menubar.setGeometry(QtCore.QRect(0, 0, 389, 21))
    self.menubar.setObjectName(_fromUtf8("menubar"))
    MainWindow.setMenuBar(self.menubar)
    self.statusbar = QtGui.QStatusBar(MainWindow)
    self.statusbar.setObjectName(_fromUtf8("statusbar"))
    MainWindow.setStatusBar(self.statusbar)
    self.retranslateUi(MainWindow)
    QtCore.QObject.connect(self.Login_button,   QtCore.SIGNAL(_fromUtf8("clicked()")), self.slot1)
    QtCore.QMetaObject.connectSlotsByName(MainWindow)

def retranslateUi(self, MainWindow):
    MainWindow.setWindowTitle(_translate("MainWindow", "Login ", None))
    self.Login_button.setText(_translate("MainWindow", "Login ", None))
    self.user_label.setText(_translate("MainWindow", "User", None))
    self.Password_label.setText(_translate("MainWindow", "Password", None))


def WW(self):

    self.window = QtGui.QMainWindow()
    self.ui = Ui_Page1()
    self.ui.setupUi(self.window)
    self.window.show()
    MainWindow.hide()


def slot1(self):

    uName = self.user.text()
    uPass = self.password.text()


    print uName
    print uPass


    conn = pypyodbc.connect('DRIVER={Driver do Microsoft Access     (*.mdb)};UID=admin;UserCommitSync=Yes;Threads=3;SafeTransactions=0;PageTimeout=5 
 ;MaxScanRows=8;MaxBufferSize=2048;FIL={MS     Access};DriverId=25;DefaultDir=//ICASACTNFS02/Share/New;DBQ=//ICASACTNFS02/Share/  New/snake.mdb')  


    cursor = conn.cursor()

    sql = "SELECT * FROM gtable WHERE User = '%s' AND pwd = '%s'"% 
 (uName,uPass)

    see = cursor.execute(sql)

    if (len (see.fetchall()) > 0) :

        print " User OK !"


        self.WW()

        conn.close()

    else:


        self.status_label.setText(_fromUtf8("Try ma wee"))



if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    MainWindow = QtGui.QMainWindow()
    ui = Ui_Logged()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

Page22.py Page22.py

from PyQt4 import QtCore, QtGui  
from ingooi import Ui_NextPage  
from tafel import Ui_Main  
from tafel2 import Ui_TaPage  
import pypyodbc  
import sys  

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig,   _encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)

class Ui_Page1(object):


def setupUi(self, Page1):
    Page1.setObjectName(_fromUtf8("Page1"))
    Page1.resize(586, 617)
    self.centralwidget = QtGui.QWidget(Page1)
    self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
    self.pushButton = QtGui.QPushButton(self.centralwidget)
    self.pushButton.setGeometry(QtCore.QRect(130, 40, 300, 61))
    self.pushButton.setObjectName(_fromUtf8("pushButton"))

    self.pushButton.clicked.connect(self.dataenter)

    self.pushButton_2 = QtGui.QPushButton(self.centralwidget)
    self.pushButton_2.setGeometry(QtCore.QRect(130, 130, 291, 61))
    self.pushButton_2.setObjectName(_fromUtf8("pushButton_2"))

    self.pushButton_2.clicked.connect(self.dataview)

    self.pushButton_3 = QtGui.QPushButton(self.centralwidget)
    self.pushButton_3.setGeometry(QtCore.QRect(130, 220, 291, 61))
    self.pushButton_3.setObjectName(_fromUtf8("pushButton_3"))

    self.pushButton_3.clicked.connect(self.Taview)

    self.pushButton_4 = QtGui.QPushButton(self.centralwidget)
    self.pushButton_4.setGeometry(QtCore.QRect(130, 310, 291, 61))
    self.pushButton_4.setObjectName(_fromUtf8("pushButton_4"))


    self.pushButton_4.clicked.connect(self.exit)

    Page1.setCentralWidget(self.centralwidget)
    self.menubar = QtGui.QMenuBar(Page1)
    self.menubar.setGeometry(QtCore.QRect(0, 0, 586, 21))
    self.menubar.setObjectName(_fromUtf8("menubar"))
    Page1.setMenuBar(self.menubar)
    self.statusbar = QtGui.QStatusBar(Page1)
    self.statusbar.setObjectName(_fromUtf8("statusbar"))
    Page1.setStatusBar(self.statusbar)

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

def retranslateUi(self, Page1):
    Page1.setWindowTitle(_translate("Page1", "MainWindow", None))
    self.pushButton.setText(_translate("Page1", "Data Entry ", None))
    self.pushButton_2.setText(_translate("Page1", "View Data ", None))

    self.pushButton_3.setText(_translate("Page1", " Type Approved Device   
List    ", None))

    self.pushButton_4.setText(_translate("Page1", "EXIT ", None))

def dataenter(self):

    self.window = QtGui.QMainWindow()
    self.ui = Ui_NextPage()
    self.ui.setupUi(self.window)
    self.window.show()        

def dataview(self):

    self.window = QtGui.QMainWindow()
    self.ui = Ui_Main()
    self.ui.setupUi(self.window)
    self.window.show()

def Taview(self):

    self.window = QtGui.QMainWindow()
    self.ui = Ui_TaPage()
    self.ui.setupUi(self.window)
    self.window.show()


def exit(self):


    sys.exit()


if __name__ == "__main__":

    import sys

    app = QtGui.QApplication(sys.argv)
    Page1 = QtGui.QMainWindow()

    ui = Ui_Page1()
    ui.setupUi(Page1)
    Page1.show()
    sys.exit(app.exec_())

ingooi.py ingooi.py

from PyQt4 import QtCore, QtGui
import pypyodbc
from tafel import Ui_Main
import subprocess
import sys

try:
    _fromUtf8 = QtCore.QString.fromUtf8
 except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig,   _encoding)  
except AttributeError:
def _translate(context, text, disambig):
    return QtGui.QApplication.translate(context, text, disambig)

class Ui_NextPage(object):


def ViewPage(self):


    self.window = QtGui.QMainWindow()
    self.ui = Ui_Main()
    self.ui.setupUi(self.window)
    self.window.show()

def load(self):

    mydate = self.insp_date_comb.date()

    realdate = mydate.toString("dd/MM/yyyy")

    lic_name = str(self.lic_name_comb.currentText())
    lic_num = str(self.lic_nr_comb.currentText())
    systm = str(self.sys_name_comb.currentText())
    Loc = str(self.Loc_comb.currentText())

    txfreq = str(self.tx_comb.currentText())
    rxfreq = str(self.rx_comb.currentText())
    fwdpwr = str(self.fwdpwr_comb.currentText())  
    rflpwr = str(self.rflpwr_comb.currentText())

    officer  = str(self.tocomb.currentText()) 

    print lic_name
    print realdate


    conn = pypyodbc.connect('DRIVER={Driver do Microsoft Access   (*.mdb)};UID=admin;UserCommitSync=Yes;Threads=3;SafeTransactions=0;PageTimeout=5
;MaxScanRows=8;MaxBufferSize=2048;FIL={MS   Access};DriverId=25;DefaultDir=//ICASACTNFS02/Share/New;DBQ=//ICASACTNFS02/Share   /New/snake.mdb')
    cursor = conn.cursor()

    # query = "DELETE FROM measdata WHERE RFL_PWR = '%s'" %(0) 

    query = "INSERT INTO measdata     (Licensee,Lic_number,System,Location,Insp_date,TX,RX,FWD_PWR,RFL_PWR,TO) VALUES     ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')" %   (lic_name,lic_num,systm,Loc,realdate,txfreq,rxfreq,fwdpwr,rflpwr,officer) 

    cursor.execute(query)

    conn.commit()

    conn.close()


def setupUi(self, MainWindow):
    MainWindow.setObjectName(_fromUtf8("MainWindow"))
    MainWindow.resize(544, 516)
    self.centralwidget = QtGui.QWidget(MainWindow)
    self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
    self.lic_name_comb = QtGui.QComboBox(self.centralwidget)
    self.lic_name_comb.setGeometry(QtCore.QRect(120, 20, 181, 22))
    self.lic_name_comb.setEditable(True)
    self.lic_name_comb.setObjectName(_fromUtf8("lic_name_comb"))
    self.lic_name_comb.addItem(_fromUtf8(""))
    self.lic_name_comb.setItemText(0, _fromUtf8(""))
    self.lic_name_comb.addItem(_fromUtf8(""))
    self.lic_name_comb.addItem(_fromUtf8(""))
    self.lic_name_comb.addItem(_fromUtf8(""))

    self.label = QtGui.QLabel(self.centralwidget)
    self.label.setGeometry(QtCore.QRect(30, 20, 81, 31))
    self.label.setObjectName(_fromUtf8("label"))

    self.tolabel = QtGui.QLabel(self.centralwidget)
    self.tolabel.setGeometry(QtCore.QRect(30, 350, 70, 23))
    self.tolabel.setObjectName(_fromUtf8("tolabel"))

    self.label_2 = QtGui.QLabel(self.centralwidget)
    self.label_2.setGeometry(QtCore.QRect(30, 50, 71, 21))
    self.label_2.setObjectName(_fromUtf8("label_2"))
    self.lic_nr_comb = QtGui.QComboBox(self.centralwidget)
    self.lic_nr_comb.setGeometry(QtCore.QRect(120, 50, 101, 22))
    self.lic_nr_comb.setEditable(True)
    self.lic_nr_comb.setObjectName(_fromUtf8("lic_nr_comb"))
    self.lic_nr_comb.addItem(_fromUtf8(""))
    self.lic_nr_comb.setItemText(0, _fromUtf8(""))
    self.lic_nr_comb.addItem(_fromUtf8(""))
    self.lic_nr_comb.addItem(_fromUtf8(""))
    self.lic_nr_comb.addItem(_fromUtf8(""))
    self.label_8 = QtGui.QLabel(self.centralwidget)
    self.label_8.setGeometry(QtCore.QRect(30, 80, 71, 21))
    self.label_8.setObjectName(_fromUtf8("label_8"))
    self.sys_name_comb = QtGui.QComboBox(self.centralwidget)
    self.sys_name_comb.setGeometry(QtCore.QRect(120, 80, 101, 22))
    self.sys_name_comb.setEditable(True)
    self.sys_name_comb.setObjectName(_fromUtf8("sys_name_comb"))
    self.sys_name_comb.addItem(_fromUtf8(""))
    self.sys_name_comb.setItemText(0, _fromUtf8(""))

    self.sys_name_comb.addItem(_fromUtf8(""))
    self.sys_name_comb.addItem(_fromUtf8(""))
    self.sys_name_comb.addItem(_fromUtf8(""))
    self.sys_name_comb.addItem(_fromUtf8(""))
    self.sys_name_comb.addItem(_fromUtf8(""))
    self.sys_name_comb.addItem(_fromUtf8(""))

    self.insp_date_comb = QtGui.QDateEdit(self.centralwidget)
    self.insp_date_comb.setGeometry(QtCore.QRect(120, 150, 110, 22))
    self.insp_date_comb.setObjectName(_fromUtf8("insp_date_comb"))

    self.insp_date_comb.setDateTime(QtCore.QDateTime.currentDateTime())

    self.insp_date_comb.setCalendarPopup(True)

    self.label_9 = QtGui.QLabel(self.centralwidget)
    self.label_9.setGeometry(QtCore.QRect(30, 150, 81, 16))
    self.label_9.setObjectName(_fromUtf8("label_9"))

    self.submit_btn = QtGui.QPushButton(self.centralwidget)
    self.submit_btn.setGeometry(QtCore.QRect(20, 415, 70, 23))
    self.submit_btn.setObjectName(_fromUtf8("submit_btn"))

    self.submit_btn.clicked.connect(self.load)

    self.Loc_comb = QtGui.QComboBox(self.centralwidget)
    self.Loc_comb.setGeometry(QtCore.QRect(120, 110, 101, 22))
    self.Loc_comb.setEditable(True)
    self.Loc_comb.setObjectName(_fromUtf8("Loc_comb"))
    self.Loc_comb.addItem(_fromUtf8(""))
    self.Loc_comb.setItemText(0, _fromUtf8(""))
    self.Loc_comb.addItem(_fromUtf8(""))
    self.Loc_comb.addItem(_fromUtf8(""))
    self.label_10 = QtGui.QLabel(self.centralwidget)
    self.label_10.setGeometry(QtCore.QRect(30, 110, 71, 21))
    self.label_10.setObjectName(_fromUtf8("label_10"))

    self.rx_comb = QtGui.QComboBox(self.centralwidget)
    self.rx_comb.setGeometry(QtCore.QRect(120, 220, 69, 22))
    self.rx_comb.setEditable(True)
    self.rx_comb.setObjectName(_fromUtf8("rx_comb"))
    self.rx_comb.addItem(_fromUtf8(""))
    self.rx_comb.setItemText(0, _fromUtf8(""))
    self.rx_comb.addItem(_fromUtf8(""))
    self.rx_comb.addItem(_fromUtf8(""))
    self.rx_comb.addItem(_fromUtf8(""))
    self.rx_comb.addItem(_fromUtf8(""))
    self.rx_comb.addItem(_fromUtf8(""))

    self.tocomb = QtGui.QComboBox(self.centralwidget)
    self.tocomb.setGeometry(QtCore.QRect(120, 348, 110, 22))
    self.tocomb.setEditable(True)
    self.tocomb.setObjectName(_fromUtf8("rx_comb"))
    self.tocomb.addItem(_fromUtf8(""))
    self.tocomb.setItemText(0, _fromUtf8(""))
    self.tocomb.addItem(_fromUtf8("VAN NIEKERK B.A"))
    self.tocomb.addItem(_fromUtf8("ERASMUS C.M"))
    self.tocomb.addItem(_fromUtf8("FRANSMAN G.F"))
    self.tocomb.addItem(_fromUtf8("COOK H.A"))
    self.tocomb.addItem(_fromUtf8("MCQUIRE L."))
    self.tocomb.addItem(_fromUtf8("Gertse RS"))

    self.label_6 = QtGui.QLabel(self.centralwidget)
    self.label_6.setGeometry(QtCore.QRect(30, 220, 71, 21))
    self.label_6.setObjectName(_fromUtf8("label_6"))
    self.fwdpwr_comb = QtGui.QComboBox(self.centralwidget)
    self.fwdpwr_comb.setGeometry(QtCore.QRect(120, 280, 69, 22))
    self.fwdpwr_comb.setEditable(True)
    self.fwdpwr_comb.setObjectName(_fromUtf8("fwdpwr_comb"))
    self.fwdpwr_comb.addItem(_fromUtf8(""))
    self.fwdpwr_comb.setItemText(0, _fromUtf8(""))
    self.fwdpwr_comb.addItem(_fromUtf8(""))
    self.fwdpwr_comb.addItem(_fromUtf8(""))
    self.fwdpwr_comb.addItem(_fromUtf8(""))
    self.rflpwr_comb = QtGui.QComboBox(self.centralwidget)
    self.rflpwr_comb.setGeometry(QtCore.QRect(120, 310, 69, 22))
    self.rflpwr_comb.setEditable(True)
    self.rflpwr_comb.setObjectName(_fromUtf8("rflpwr_comb"))
    self.rflpwr_comb.addItem(_fromUtf8(""))
    self.rflpwr_comb.setItemText(0, _fromUtf8(""))
    self.rflpwr_comb.addItem(_fromUtf8(""))
    self.rflpwr_comb.addItem(_fromUtf8(""))
    self.rflpwr_comb.addItem(_fromUtf8(""))
    self.rflpwr_comb.addItem(_fromUtf8(""))
    self.rflpwr_comb.addItem(_fromUtf8(""))
    self.label_4 = QtGui.QLabel(self.centralwidget)
    self.label_4.setGeometry(QtCore.QRect(30, 310, 71, 21))
    self.label_4.setObjectName(_fromUtf8("label_4"))
    self.label_5 = QtGui.QLabel(self.centralwidget)
    self.label_5.setGeometry(QtCore.QRect(30, 190, 71, 21))
    self.label_5.setObjectName(_fromUtf8("label_5"))
    self.label_3 = QtGui.QLabel(self.centralwidget)
    self.label_3.setGeometry(QtCore.QRect(30, 280, 71, 21))
    self.label_3.setObjectName(_fromUtf8("label_3"))
    self.tx_comb = QtGui.QComboBox(self.centralwidget)
    self.tx_comb.setGeometry(QtCore.QRect(120, 190, 69, 22))
    self.tx_comb.setEditable(True)
    self.tx_comb.setObjectName(_fromUtf8("tx_comb"))
    self.tx_comb.addItem(_fromUtf8(""))
    self.tx_comb.setItemText(0, _fromUtf8(""))
    self.tx_comb.addItem(_fromUtf8(""))
    self.tx_comb.addItem(_fromUtf8(""))
    self.tx_comb.addItem(_fromUtf8(""))
    self.tx_comb.addItem(_fromUtf8(""))
    self.tx_comb.addItem(_fromUtf8(""))

    self.pushButton = QtGui.QPushButton(self.centralwidget)
    self.pushButton.setGeometry(QtCore.QRect(20, 450, 90, 23))
    self.pushButton.setObjectName(_fromUtf8("pushButton"))

    MainWindow.setCentralWidget(self.centralwidget)
    self.menubar = QtGui.QMenuBar(MainWindow)
    self.menubar.setGeometry(QtCore.QRect(0, 0, 544, 21))
    self.menubar.setObjectName(_fromUtf8("menubar"))
    MainWindow.setMenuBar(self.menubar)
    self.statusbar = QtGui.QStatusBar(MainWindow)
    self.statusbar.setObjectName(_fromUtf8("statusbar"))
    MainWindow.setStatusBar(self.statusbar)

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

def retranslateUi(self, MainWindow):
    MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None))
    self.lic_name_comb.setItemText(1, _translate("MainWindow", "Comms 1 ",   None))
    self.lic_name_comb.setItemText(2, _translate("MainWindow", "Comms 2",   None))
    self.lic_name_comb.setItemText(3, _translate("MainWindow", "Comms 3",   None))
    self.label.setText(_translate("MainWindow", "Licensee", None))
    self.label_2.setText(_translate("MainWindow", "License nr", None))
    self.lic_nr_comb.setItemText(1, _translate("MainWindow", "12345689",   None))
    self.lic_nr_comb.setItemText(2, _translate("MainWindow", "13634568",   None))
    self.lic_nr_comb.setItemText(3, _translate("MainWindow", "56345689",   None))
    self.label_8.setText(_translate("MainWindow", "System", None))

    self.sys_name_comb.setItemText(1, _translate("MainWindow", "Repeater ",   None))
    self.sys_name_comb.setItemText(2, _translate("MainWindow", "Telemetry", None))
    self.sys_name_comb.setItemText(3, _translate("MainWindow", "Trunking ",   None))
    self.sys_name_comb.setItemText(4, _translate("MainWindow", "Alarm",   None))
    self.sys_name_comb.setItemText(5, _translate("MainWindow", "Relay",   None))

    self.insp_date_comb.setDisplayFormat(_translate("MainWindow",   "d/M/yyyy", None))
    self.label_9.setText(_translate("MainWindow", "Inspection Date", None))
    self.submit_btn.setText(_translate("MainWindow", "Submit", None))
    self.Loc_comb.setItemText(1, _translate("MainWindow", "Location 1 ",   None))
    self.Loc_comb.setItemText(2, _translate("MainWindow", "Location 2 ",   None))

    self.label_10.setText(_translate("MainWindow", "Location", None))

    self.tolabel.setText(_translate("MainWindow", "OFFICER", None))

    self.rx_comb.setItemText(1, _translate("MainWindow", "100", None))
    self.rx_comb.setItemText(2, _translate("MainWindow", "200", None))
    self.rx_comb.setItemText(3, _translate("MainWindow", "300", None))
    self.rx_comb.setItemText(4, _translate("MainWindow", "400", None))
    self.rx_comb.setItemText(5, _translate("MainWindow", "500", None))
    self.label_6.setText(_translate("MainWindow", "RX FREQ", None))
    self.fwdpwr_comb.setItemText(1, _translate("MainWindow", "10", None))
    self.fwdpwr_comb.setItemText(2, _translate("MainWindow", "20", None))
    self.fwdpwr_comb.setItemText(3, _translate("MainWindow", "30", None))
    self.rflpwr_comb.setItemText(1, _translate("MainWindow", "1", None))
    self.rflpwr_comb.setItemText(2, _translate("MainWindow", "2", None))
    self.rflpwr_comb.setItemText(3, _translate("MainWindow", "3", None))
    self.rflpwr_comb.setItemText(4, _translate("MainWindow", "4", None))
    self.rflpwr_comb.setItemText(5, _translate("MainWindow", "5", None))
    self.label_4.setText(_translate("MainWindow", "REFL PWR", None))
    self.label_5.setText(_translate("MainWindow", "TX FREQ", None))
    self.label_3.setText(_translate("MainWindow", "FWD PWR ", None))
    self.tx_comb.setItemText(1, _translate("MainWindow", "100", None))
    self.tx_comb.setItemText(2, _translate("MainWindow", "200", None))
    self.tx_comb.setItemText(3, _translate("MainWindow", "300", None))
    self.tx_comb.setItemText(4, _translate("MainWindow", "400", None))
    self.tx_comb.setItemText(5, _translate("MainWindow", "500", None))

    self.pushButton.setText(_translate("MainWindow", "View Data ", None))

    self.pushButton.clicked.connect(self.ViewPage)



if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    MainWindow = QtGui.QMainWindow()
    ui = Ui_NextPage()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

The problem is in your design, you should not think that each file is a different program, it is really only one. 问题出在您的设计中,您不应认为每个文件都是一个不同的程序,它实际上只是一个。

Another recommendation is that you do not modify the code generated by QtDesigner, this is not necessary also if you want to modify something in the GUI will erase all the above, for example if you have a design for example the Login.py: 另一个建议是您不要修改QtDesigner生成的代码,如果您想在GUI中修改某些内容,也将擦除上面所有内容,例如,如果您有设计,例如Login.py,则也不需要这样做:

class Ui_Logged(object):
    def setupUi(self, MainWindow):
      [...]

Then you must create another class that implements the logic 然后,您必须创建另一个实现逻辑的类

class Login(QtGui.QMainWindow, Login.Ui_Logged):
    def __init__(self, *args, **kwargs):
        QtGui.QMainWindow.__init__(self, *args, **kwargs)
        self.setupUi(self)
        [...]

then in your case you have to Page1() member of the class and show it when you call WW() , you should not create it just open it 那么在您的情况下,您必须是该类的Page1()成员,并在调用WW()时显示它,您不应仅打开它就创建它

class Login(QtGui.QMainWindow, Login.Ui_Logged):
    def __init__(self, *args, **kwargs):
        QtGui.QMainWindow.__init__(self, *args, **kwargs)
        self.setupUi(self)
        self.Login_button.clicked(self.slot1)
        self.window = Page1()

    def WW(self):
        self.window.show()
        self.hide()

The same thing you have to do in Page1() with each slot. 对于每个插槽,您必须在Page1()执行相同的操作。 NextPage() is the class that implements the logic of Ui_NextPage() NextPage()是实现Ui_NextPage()逻辑的类

class Page1(QtGui.QMainWindow, Page22.Ui_Page1)
    def __init__(self, *args, **kwargs):
        QtGui.QMainWindow.__init__(self, *args, **kwargs)
        self.setupUi(self)
        self.pushButton.clicked.connect(self.dataenter)
        self.pushButton_2.clicked.connect(self.dataview)
        self.pushButton_3.clicked.connect(self.Taview)
        self.pushButton_4.clicked.connect(self.exit)
        self.nextPage = NextPage()

    def dataenter(self):
        self.nextPage.show()  

        [...]

So if we have that logic it's easy to call to access the QComboBox from slot() : 因此,如果有这种逻辑,就可以很容易地从slot()调用QComboBox:

def slot1(self):
    uName = self.user.text()
    uPass = self.password.text()
    combo = self.window.nextPage.tocomb
    items = [combo.itemText(i) for i in range(combo.count())]
    if uName not in items:
        combo.addItem(uName)
    combo.setCurrentTex(uName)

I have tried to order your code, maybe have import problems but I think they should be minimal so you can fix them, run the file main.py. 我尝试订购您的代码,也许有导入问题,但我认为它们应该很小,以便您可以修复它们,运行文件main.py。 The complete code can be found at the following link . 完整的代码可以在以下链接中找到。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM