Python PyQt5 图书管理系统:增加图书界面 - 出版时间验证与颜色设置
class Add_Book_Window(QMainWindow):
def __init__(self, privilege,parent=None):
super(Add_Book_Window, self).__init__(parent)
self.privilege = privilege
self.setWindowTitle('增加图书界面')
self.resize(400, 300)
# 创建界面控件
self.label_add_bookid = QLabel('图书ID:')
self.edit_add_bookid = QLineEdit()
self.label_add_bookname = QLabel('书名:')
self.edit_add_bookname = QLineEdit()
self.label_add_author = QLabel('作者:')
self.edit_add_author = QLineEdit()
self.label_add_chubanshe = QLabel('出版社:')
self.edit_add_chubanshe = QLineEdit()
self.label_add_time = QLabel('出版时间:')
self.edit_add_time = QLineEdit()
self.label_add_price = QLabel('价格:')
self.edit_add_price = QLineEdit()
self.label_add_lendornot = QLabel('是否借出:')
self.combo_add_lendornot = QComboBox()
self.combo_add_lendornot.addItem('是')
self.combo_add_lendornot.addItem('否')
self.btn_add_book_yes = QPushButton('添加')
self.btn_add_book_fanhui = QPushButton('返回')
# 设置出版时间输入框验证器和颜色
self.edit_add_time.setValidator(QRegExpValidator(QRegExp('\d{4}-\d{2}-\d{2}'), self))
self.edit_add_time.textChanged.connect(self.on_edit_add_time_text_changed)
# 创建布局
layout = QGridLayout()
layout.addWidget(self.label_add_bookid, 0, 0)
layout.addWidget(self.edit_add_bookid, 0, 1)
layout.addWidget(self.label_add_bookname, 1, 0)
layout.addWidget(self.edit_add_bookname, 1, 1)
layout.addWidget(self.label_add_author, 2, 0)
layout.addWidget(self.edit_add_author, 2, 1)
layout.addWidget(self.label_add_chubanshe, 3, 0)
layout.addWidget(self.edit_add_chubanshe, 3, 1)
layout.addWidget(self.label_add_time, 4, 0)
layout.addWidget(self.edit_add_time, 4, 1)
layout.addWidget(self.label_add_price, 5, 0)
layout.addWidget(self.edit_add_price, 5, 1)
layout.addWidget(self.label_add_lendornot, 6, 0)
layout.addWidget(self.combo_add_lendornot, 6, 1)
layout.addWidget(self.btn_add_book_yes, 7, 0)
layout.addWidget(self.btn_add_book_fanhui, 7, 1)
# 创建中心窗口部件
central_widget = QWidget()
central_widget.setLayout(layout)
self.setCentralWidget(central_widget)
def on_edit_add_time_text_changed(self, text):
if not QRegExp('\d{4}-\d{2}-\d{2}').exactMatch(text):
self.label_add_time.setStyleSheet('color: red;')
else:
self.label_add_time.setStyleSheet('color: black;')
原文地址: http://www.cveoy.top/t/topic/oQfA 著作权归作者所有。请勿转载和采集!