-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathloadui.py
87 lines (59 loc) · 2.02 KB
/
loadui.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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
"""
by: วรเพชร เรืองพรวิสุทธิ์
create: 1/2/2567
"""
import sys ,os
from PyQt6 import uic
from PyQt6.QtWidgets import QMainWindow,QApplication
from PyQt6.QtCore import QCoreApplication,QDate
from PyQt6.QtGui import QFont
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
pass
def loadUI(self,uiFileName: str):
try:
uic.loadUi(uiFileName, self)
print('loadUI = [OK]')
self.setupUI()
return True
except Exception as err:
print(err)
def setupUI(self):
print('setupUI [Enter]')
self.btnOK.clicked.connect(self.btnOKClick)
self.btnCancel.clicked.connect(self.btnCancelClick)
self.deBirth.setDate(QDate.currentDate())
pass
def btnOKClick(self):
print('btnOKClick Click')
print(self.leName.text())
print(self.leLastName.text())
print(self.deBirth.text())
def btnCancelClick(self):
print('btnCancelClick Click')
def main():
# รับค่า instance ถ้าเคยมีการสั่งรันไว้ก่อนหน้านี้
app = QCoreApplication.instance()
# ถ้าไม่มีการรัน ค่าที่ได้คือ None
# PyQT API อาจแจ้ง Error ถ้า app != None !! Freeze !!
# 1 app ต้องมี 1 instance เท่านั้น
if app is None:
app = QApplication([])
# set app
app.setFont(QFont('Bai Jamjuree',12))
# check file UI
pathFileName = 'ui/ui01.ui'
if os.path.exists(pathFileName) :
print('Path+FileName = OK')
else:
print('Path+FileName = NOT_FOUND')
# load UI
window = MainWindow()
if window.loadUI(pathFileName) == True:
window.show()
sys.exit(app.exec())
else:
print('loadUI Error !!')
if __name__ == '__main__':
main()