-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoptview.py
62 lines (50 loc) · 1.62 KB
/
optview.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# coding: utf-8
from PyQt5.QtWidgets import *
from PyQt5 import QtCore, QtGui
from PyQt5 import uic
import os
import sys
import config
uifile = os.path.join(config.APP_DIR, 'optview.ui')
ui_mainwindow, qtbaseclass = uic.loadUiType(uifile)
class OptView(ui_mainwindow, qtbaseclass):
'''操作界面'''
value = ''
check = False
def __init__(self, parent=None, name=None, value=None):
super().__init__(parent)
self.setupUi(self)
self.label_name.setText(name)
self.label_value.setText(value)
self.value = value
self.setWindowFlags(
QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint) # 弹出窗口,无边框
def slot_ok_clicked(self):
'''确认点击'''
value_edit = self.lineEdit.text()
if value_edit.upper() == self.value.upper():
self.check = True
self.accept()
else:
self.check = False
# 清空文本框,等待下次输入
self.lineEdit.setText('')
QMessageBox.critical(self, '错误', '值不匹配!')
def slot_cancel_clicked(self):
'''取消点击'''
self.reject()
def slot_enter_clicked(self):
'''文本编辑回车键按下'''
self.slot_ok_clicked()
def keyPressEvent(self, event):
'''重写键盘响应事件'''
if event.key() == QtCore.Qt.Key_Escape:
# 不处理ESC按键
pass
else:
super().keyPressEvent(event)
if __name__ == '__main__':
app = QApplication(sys.argv)
o = OptView(None, 'name', 'value')
o.show()
sys.exit(app.exec_())