偶极阱优化辅助工具

该代码实现了一个名为 LittleHelper 的 PyQt6 应用程序,它包含多个标签页,每个标签页提供不同的帮助功能。目前实现了两个帮助功能:xODT AlignmentStray Field Compensation

功能介绍

该代码实现了一个名为 LittleHelper 的 PyQt6 应用程序,它包含多个标签页,每个标签页提供不同的帮助功能。目前实现了两个帮助功能:xODT AlignmentStray Field Compensation

代码结构

  • 导入必要的模块和库
  • 定义 LittleHelper
  • 定义 TabWidget
  • 定义脚本入口

类:LittleHelper

简短功能介绍

LittleHelper 类是一个主窗口类,用于创建和显示包含多个标签页的主窗口。

方法:__init__

功能:初始化 LittleHelper 对象,设置窗口标题并创建标签页部件。

参数

  • *args**kwargs:可变参数和关键字参数,用于初始化基类。

主要步骤

  1. 调用父类的 __init__ 方法。
  2. 设置窗口标题为 “Little Helper”。
  3. 创建并设置 TabWidget 作为中央部件。

类:TabWidget

简短功能介绍

TabWidget 类是一个包含多个标签页的部件,每个标签页提供不同的帮助功能。

方法:__init__

功能:初始化 TabWidget 对象,创建并添加标签页。

参数

  • parent:父对象。

主要步骤

  1. 调用父类的 __init__ 方法。
  2. 创建主布局并设置为垂直布局。
  3. 初始化标签页组件 QTabWidget
  4. 创建并添加标签页:
    • tab1OdtAlignmentHelper 标签页,用于 xODT 对准。
    • tab2CompensationHelper 标签页,用于杂散场补偿。
  5. 将标签页添加到 QTabWidget 中。
  6. QTabWidget 添加到主布局中并设置布局。

脚本入口

简短功能介绍

脚本入口用于创建应用程序实例,显示主窗口并启动应用事件循环。

主要步骤

  1. 创建 QApplication 实例。
  2. 创建 LittleHelper 实例。
  3. 显示主窗口。
  4. 启动应用事件循环。

完整代码解释

import sys

from PyQt6.QtWidgets import *
from PyQt6.QtCore import pyqtSlot

from balic.GUI.odt_alignment_helper import OdtAlignmentHelper
from balic.GUI.comp_helper import CompensationHelper
# from balic.GUI.verdi_alignment_helper import VerdiAlignmentHelper

class LittleHelper(QMainWindow):
    """
    Automated startup routines
    """
    def __init__(self, *args, **kwargs):
        super(LittleHelper, self).__init__(*args, **kwargs)

        self.setWindowTitle("Little Helper")

        # create the tabs that can host diverse helper environments
        self.tabWidget = TabWidget(self)
        self.setCentralWidget(self.tabWidget)

class TabWidget(QWidget):

    def __init__(self, parent):
        super(QWidget, self).__init__(parent)
        self.layout = QVBoxLayout()

        # Initialize tab screen
        self.tabs = QTabWidget()
        self.tab1 = OdtAlignmentHelper(self)
        self.tab2 = CompensationHelper(self)
        # self.tab3 = VerdiAlignmentHelper(self)

        # Add tabs
        self.tabs.addTab(self.tab1, "xODT Alignment")
        self.tabs.addTab(self.tab2, "Stray Field Compensation")
        # self.tabs.addTab(self.tab3,"Verdi Alignment")

        # Add tabs to widget
        self.layout.addWidget(self.tabs)
        self.setLayout(self.layout)

if __name__ == '__main__':
    app = QApplication(sys.argv)

    window = LittleHelper()
    window.show()

    sys.exit(app.exec())

主要类和方法

  • LittleHelper:主窗口类,包含多个标签页。

    • __init__:初始化窗口标题和标签页部件。
  • TabWidget:包含多个标签页的部件。

    • __init__:初始化标签页并添加不同的帮助功能标签页。

脚本入口

  • 创建 QApplication 实例。
  • 创建 LittleHelper 实例并显示主窗口。
  • 启动应用事件循环。