Series: ocpp
python
182 lines
· Updated 2026-02-03
home.py
ocpp/homework/ui_hori/home.py
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'home.ui'
#
# Created by: PyQt5 UI code generator 5.15.10
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(1024, 600)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(0, 0, 1024, 600))
self.label.setStyleSheet("")
self.label.setText("")
self.label.setPixmap(QtGui.QPixmap("image/bg_index1.png"))
self.label.setScaledContents(False)
self.label.setObjectName("label")
self.label_2 = QtWidgets.QLabel(Form)
self.label_2.setGeometry(QtCore.QRect(337, 84, 350, 92))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth())
self.label_2.setSizePolicy(sizePolicy)
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(40)
font.setBold(True)
font.setWeight(75)
self.label_2.setFont(font)
self.label_2.setAutoFillBackground(False)
self.label_2.setStyleSheet("QLabel {\n"
" color: white; /* 文字顏色 */\n"
" font-size: 40pt; /* 字體大小 */\n"
" font-weight: bold; /* 粗體 */\n"
" font-family: \"Arial\";\n"
" }\n"
" ")
self.label_2.setInputMethodHints(QtCore.Qt.ImhNone)
self.label_2.setScaledContents(True)
self.label_2.setTextInteractionFlags(QtCore.Qt.NoTextInteraction)
self.label_2.setObjectName("label_2")
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(405, 206, 214, 72))
self.label_3.setText("")
self.label_3.setPixmap(QtGui.QPixmap("image/logo1.png"))
self.label_3.setScaledContents(True)
self.label_3.setObjectName("label_3")
self.label_4 = QtWidgets.QLabel(Form)
self.label_4.setGeometry(QtCore.QRect(333, 294, 421, 55))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(26)
self.label_4.setFont(font)
self.label_4.setStyleSheet("QLabel {\n"
" color: white; /* 文字顏色 */\n"
" font-size: 26pt; /* 字體大小 */\n"
" font-family: \"Arial\";\n"
" }\n"
" ")
self.label_4.setScaledContents(True)
self.label_4.setObjectName("label_4")
self.pushButton_start = QtWidgets.QPushButton(Form)
self.pushButton_start.setGeometry(QtCore.QRect(387, 440, 250, 88))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(20)
self.pushButton_start.setFont(font)
self.pushButton_start.setStyleSheet("QPushButton {\n"
" border-image: url(\"image/btn_250x88_def.png\") 0 0 0 0 stretch stretch;\n"
" color: white; /* 文字顏色 */\n"
" font-size: 20pt; /* 字體大小 */\n"
" }\n"
" QPushButton:pressed {\n"
" border-image: url(\"image/btn_250x88_act.png\") 0 0 0 0 stretch stretch;\n"
" color: #FFFF00; /* 文字顏色 */\n"
" font-size: 20pt; /* 字體大小 */\n"
" }")
self.pushButton_start.setIconSize(QtCore.QSize(250, 88))
self.pushButton_start.setFlat(True)
self.pushButton_start.setObjectName("pushButton_start")
# Language selection dropdown
self.language_combo = QtWidgets.QComboBox(Form)
self.language_combo.setGeometry(QtCore.QRect(800, 84, 200, 40))
self.language_combo.setStyleSheet("QComboBox {\n"
" background-color: rgba(255, 255, 255, 0.9);\n"
" border: 2px solid #4A90E2;\n"
" border-radius: 8px;\n"
" padding: 5px;\n"
" font-size: 16pt;\n"
" font-family: \"Arial\";\n"
" color: #333;\n"
"}\n"
"QComboBox::drop-down {\n"
" border: none;\n"
" width: 30px;\n"
"}\n"
"QComboBox::down-arrow {\n"
" image: none;\n"
" border-left: 5px solid transparent;\n"
" border-right: 5px solid transparent;\n"
" border-top: 5px solid #4A90E2;\n"
" margin-right: 10px;\n"
"}\n"
"QComboBox QAbstractItemView {\n"
" background-color: white;\n"
" border: 2px solid #4A90E2;\n"
" border-radius: 0px;\n"
" padding: 0px;\n"
" margin: 0px;\n"
" selection-background-color: #4A90E2;\n"
" selection-color: white;\n"
" outline: none;\n"
"}\n"
"QComboBox QAbstractItemView::item {\n"
" padding: 8px 12px;\n"
" border: none;\n"
" margin: 0px;\n"
" font-size: 16pt;\n"
"}\n"
"QComboBox QAbstractItemView::item:selected {\n"
" background-color: #4A90E2;\n"
" color: white;\n"
"}")
self.language_combo.setObjectName("language_combo")
# Version label
self.version_label = QtWidgets.QLabel(Form)
self.version_label.setGeometry(QtCore.QRect(20, 560, 100, 30))
self.version_label.setStyleSheet("QLabel {\n"
" color: white;\n"
" font-size: 12pt;\n"
" font-family: \"Arial\";\n"
"}")
self.version_label.setObjectName("version_label")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.label_2.setText(_translate("Form", "Welcome"))
self.label_4.setText(_translate("Form", "Charging Station"))
self.pushButton_start.setText(_translate("Form", "Start"))
# Populate language dropdown with flags
self.language_combo.clear()
languages = [
("🇹🇼 繁體中文", "Traditional Chinese"),
("🇨🇳 简体中文", "Simplified Chinese"),
("🇺🇸 English", "English"),
("🇯🇵 日本語", "Japanese"),
("🇹🇭 ภาษาไทย", "Thai"),
("🇻🇳 Tiếng Việt", "Vietnamese"),
("🇪🇸 Español", "Spanish")
]
for display_name, internal_name in languages:
self.language_combo.addItem(display_name, internal_name)
# Set default to English
self.language_combo.setCurrentText("🇺🇸 English")
self.version_label.setText(_translate("Form", "v1.0.1"))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
Form = QtWidgets.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())
Related articles
ocpp
python
Updated 2026-02-03
central_system.py
central_system.py — python source code from the ocpp learning materials (ocpp/homework/central_system.py).
Read article →
ocpp
python
Updated 2026-02-03
charge_point.py
charge_point.py — python source code from the ocpp learning materials (ocpp/homework/ocpp/charge_point.py).
Read article →
ocpp
python
Updated 2026-02-03
exceptions.py
exceptions.py — python source code from the ocpp learning materials (ocpp/homework/ocpp/exceptions.py).
Read article →
ocpp
python
Updated 2026-02-03
messages.py
messages.py — python source code from the ocpp learning materials (ocpp/homework/ocpp/messages.py).
Read article →
ocpp
python
Updated 2026-02-03
routing.py
routing.py — python source code from the ocpp learning materials (ocpp/homework/ocpp/routing.py).
Read article →
ocpp
python
Updated 2026-02-03
__init__.py
__init__.py — python source code from the ocpp learning materials (ocpp/homework/ocpp/v16/__init__.py).
Read article →