class LoginWindow(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setFixedSize(800, 500) self.setWindowTitle('鸡爪称重系统') # 创建一个按钮 button = QPushButton('开始称重', self) button.move(100, 100) button.setGeometry(300, 200, 200, 50) button.clicked.connect(self.showInputDialog) def showInputDialog(self): text, okPressed = QInputDialog.getText(self, "输入员工ID", "输入员工ID:") if okPressed and text != '': print('输入的ID是:', text) if __name__ == '__main__': app = QApplication(sys.argv) loginWindow = LoginWindow() loginWindow.show() sys.exit(app.exec_())输入ID后和数据库员工ID匹配,如果没有重新输入
时间: 2023-12-10 12:02:34 浏览: 69
vc.rar_VC qt_qt vc.pdb
您可以在showInputDialog()方法中添加一个判断,如果输入的ID与数据库中的员工ID匹配,则跳转到下一个界面;否则弹出提示框,提示重新输入。以下是一个简单的实现:
```
import pymysql
class LoginWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setFixedSize(800, 500)
self.setWindowTitle('鸡爪称重系统')
# 创建一个按钮
button = QPushButton('开始称重', self)
button.setGeometry(300, 200, 200, 50)
button.clicked.connect(self.showInputDialog)
def showInputDialog(self):
# 创建一个输入框,获取员工ID
text, okPressed = QInputDialog.getText(self, "输入员工ID", "输入员工ID:")
if okPressed and text != '':
# 连接数据库,检查员工ID是否存在
conn = pymysql.connect(host='localhost', user='root', password='password', database='database_name')
cursor = conn.cursor()
cursor.execute("SELECT * FROM employees WHERE id='%s'" % text)
result = cursor.fetchone()
if result:
# 员工ID存在,跳转到下一个界面
print('输入的ID是:', text)
# TODO: 跳转到下一个界面
else:
# 员工ID不存在,弹出提示框,提示重新输入
QMessageBox.warning(self, '错误', '员工ID不存在,请重新输入!')
if __name__ == '__main__':
app = QApplication(sys.argv)
loginWindow = LoginWindow()
loginWindow.show()
sys.exit(app.exec_())
```
注意,这只是一个简单的实现示例。在实际应用中,您需要根据具体情况进行修改和完善。
阅读全文