You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
2.5 KiB
67 lines
2.5 KiB
import sys
|
|
from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QVBoxLayout,
|
|
QHBoxLayout, QTabWidget, QPushButton, QLabel,
|
|
QGroupBox, QComboBox, QSpinBox, QDoubleSpinBox,
|
|
QProgressBar, QCheckBox)
|
|
from PyQt5.QtCore import Qt
|
|
from PyQt5.QtGui import QFont
|
|
from ui.login_view import LoginView
|
|
from ui.main_view import MainView
|
|
from ui.map_view import MapView
|
|
from ui.threat_layer_view import ThreatLayerView
|
|
from ui.path_layer_view import PathLayerView
|
|
from ui.drone_list_view import DroneListView
|
|
from ui.drone_detail_view import DroneDetailView
|
|
from ui.status_dashboard import StatusDashboard
|
|
from ui.path_planning_view import PathPlanningView
|
|
from ui.algorithm_config_view import AlgorithmConfigView
|
|
from ui.path_simulation_view import PathSimulationView
|
|
|
|
class CommandCenterApp(QMainWindow):
|
|
def __init__(self):
|
|
super().__init__()
|
|
self.init_ui()
|
|
|
|
def init_ui(self):
|
|
# 设置窗口标题和大小
|
|
self.setWindowTitle("无人机后勤输送系统 - 指挥控制中心")
|
|
self.setMinimumSize(1200, 800)
|
|
|
|
# 创建主窗口部件
|
|
central_widget = QWidget()
|
|
self.setCentralWidget(central_widget)
|
|
|
|
# 创建主布局
|
|
main_layout = QVBoxLayout(central_widget)
|
|
|
|
# 创建标签页
|
|
self.tab_widget = QTabWidget()
|
|
|
|
# 添加各个功能标签页
|
|
self.tab_widget.addTab(MapView(), "地图视图")
|
|
self.tab_widget.addTab(ThreatLayerView(), "威胁层")
|
|
self.tab_widget.addTab(PathLayerView(), "路径层")
|
|
self.tab_widget.addTab(DroneListView(), "无人机列表")
|
|
self.tab_widget.addTab(DroneDetailView(), "无人机详情")
|
|
self.tab_widget.addTab(StatusDashboard(), "状态仪表板")
|
|
self.tab_widget.addTab(PathPlanningView(), "路径规划")
|
|
self.tab_widget.addTab(AlgorithmConfigView(), "算法配置")
|
|
self.tab_widget.addTab(PathSimulationView(), "路径模拟")
|
|
|
|
main_layout.addWidget(self.tab_widget)
|
|
|
|
# 显示登录窗口
|
|
self.show_login()
|
|
|
|
def show_login(self):
|
|
self.login_view = LoginView()
|
|
self.login_view.show()
|
|
|
|
# 连接登录成功信号
|
|
# TODO: 实现登录成功后的处理逻辑
|
|
|
|
if __name__ == '__main__':
|
|
app = QApplication(sys.argv)
|
|
window = CommandCenterApp()
|
|
window.show()
|
|
sys.exit(app.exec_()) |