得到PyQt5.QtWidgets import QWidget, QLabel, QLineEdit, QGroupBox, QGridLayout, QVBoxLayout, QPushButton QMessageBox
import 泡菜、pymssql os线程、时间
#定义数据库窗口
class db_window (QWidget):
,,,def __init__(自我):
,,,,,,,超级(). __init__ ()
,,,,,,,self.db_server =, QLineEdit ()
,,,,,,,self.db_port =, QLineEdit ()
,,,,,,,self.db_user =, QLineEdit ()
,,,,,,,self.db_password =, QLineEdit ()
,,,,,,,self.dir_db =, {}
,,,,,,,#初始化数据库链接信息
,,,,,,,self.db_test_flag =1
,,,,,,,self.dir_test_db =, {}
,,,,,,,self.initUI ()
,,,,,,,self.initDB ()
,,,def initUI(自我):
,,,,,,,#初始化页面
,,,,,,,db_server_label =, QLabel(“数据库地址:')
,,,,,,,db_port_label =, QLabel(“端口:')
,,,,,,,db_user_label =, QLabel(“数据库账号:')
,,,,,,,db_password_label =, QLabel(“数据库密码:')
,,,,,,,self.db_password.setEchoMode (QLineEdit.Password)
,,,,,,,db_test_button =, QPushButton(“测试数据库链接的)
,,,,,,,db_input_button =, QPushButton(“保存数据库链接的)
,,,,,,,db_test_button.clicked.connect (self.test_db)
,,,,,,,db_input_button.clicked.connect (self.save_db)
,,,,,,,db_dbinfo_group =, QGroupBox(“该数据库”)
,,,,,,,db_mssql_grid =, QGridLayout ()
,,,,,,,db_mssql_grid.addWidget (db_server_label, 0, 0)
,,,,,,,db_mssql_grid.addWidget (db_port_label 0 1)
,,,,,,,db_mssql_grid.addWidget (db_user_label 0 2)
,,,,,,,db_mssql_grid.addWidget (db_password_label 0 3)
,,,,,,,db_mssql_grid.addWidget (db_test_button 0 4)
,,,,,,,db_mssql_grid.addWidget (self.db_server 1 0)
,,,,,,,db_mssql_grid.addWidget (self.db_port 1 1)
,,,,,,,db_mssql_grid.addWidget (self.db_user 1 2)
,,,,,,,db_mssql_grid.addWidget (self.db_password 1 3)
,,,,,,,db_mssql_grid.addWidget (db_input_button 1 4)
,,,,,,,db_dbinfo_group.setLayout (db_mssql_grid)
,,,,,,,vbox =, QVBoxLayout ()
,,,,,,,vbox.addWidget (db_dbinfo_group)
,,,,,,,self.test_label =, QLabel (")
,,,,,,,vbox.addWidget (self.test_label)
,,,,,,,vbox.setStretchFactor (db_dbinfo_group, 3)
,,,,,,,vbox.setStretchFactor (self.test_label, 7)
,,,,,,,self.setLayout (vbox)
,,,#初始化数据库链接信息
,,,def initDB(自我):
,,,,,,,试一试:
,,,,,,,,,,,if os.path.exists(“。//数据//DBinfo.pik”):
,,,,,,,,,,,,,,,with 开放(。//数据//DBinfo.pik, rb), as db_file:
,,,,,,,,,,,,,,,,,,,self.dir_db =, pickle.load (db_file)
,,,,,,,,,,,,,,,for line 拷贝self.dir_db.keys ():
,,,,,,,,,,,,,,,,,,,if line ==,“服务器”:
,,,,,,,,,,,,,,,,,,,,,,,,self.db_server.setText (self.dir_db[“服务器”])
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null