Maxwell中使用python建立一個box

Maxwell中使用python建立一個box

在Maxwell中可以錄制python的腳本,直接運行就可以了,但是目前想通過菜單模塊化一個命令,那么就可以運行程序生成相應的方塊了

效果如圖所示,可以看到在tool的下方添加自己編輯的命令

Maxwell中使用python建立一個box的圖1

點擊build box01可以產生如下的窗口

Maxwell中使用python建立一個box的圖2

點擊創建就可以生成一個方塊了

Maxwell中使用python建立一個box的圖3

連續點擊方塊就可以連續創建,知道點擊取消按鈕

以此類推就可以創建其他的命令窗口了,關鍵的代碼如下所示

# command中運行,
# 獲取當前工作狀態
# Email:fwz0703@163.com 
import ScriptEnv
ScriptEnv.Initialize("Ansoft.ElectronicsDesktop")
oDesktop.RestoreWindow()
oProject = oDesktop.GetActiveProject()
oDesign = oProject.GetActiveDesign()
oModule = oDesign.GetModule("BoundarySetup")
oEditor = oDesign.SetActiveEditor("3D Modeler")
# ------------------------------------------------------------------------
import os, sys, System, clr
from Microsoft.Win32 import Registry
clr.AddReference("System.Windows.Forms")
clr.AddReference("System.Drawing")
from System.Windows.Forms import *

# ===================頭部  ====================
        # ========== 確定按鈕 ==========
        btn_confirm = Button()
        btn_confirm.Text = "創建"  # 按鈕文本
        btn_confirm.Location = Point(150, 250)  # 按鈕位置(X,Y)
        btn_confirm.Size = Size(100, 35)  # 按鈕尺寸(寬,高)
        btn_confirm.BackColor = Color.FromArgb(66, 139, 202)  # 藍色背景
        btn_confirm.ForeColor = Color.White  # 白色文字
        btn_confirm.Click += self.OnConfirmClick  # 綁定點擊事件
        self.Controls.Add(btn_confirm)


        # ==========取消按鈕 ==========
        btn_cancel = Button()
        btn_cancel.Text = "取消"
        btn_cancel.Location = Point(270, 250)
        btn_cancel.Size = Size(100, 35)
        btn_cancel.BackColor = Color.FromArgb(217, 83, 79)  # 紅色背景
        btn_cancel.ForeColor = Color.White
        btn_cancel.Click += self.OnCancelClick  # 綁定點擊事件
        self.Controls.Add(btn_cancel)





class MaxwellWindow(Form):
    def __init__(self):
        # 窗口基礎配置
        self.Text = "Maxwell 2024R2 - Box幾何創建工具"
        self.Size = Size(480, 400)
        self.FormBorderStyle = FormBorderStyle.Sizable
        self.StartPosition = FormStartPosition.CenterScreen
        self.BackColor = Color.FromArgb(245, 245, 245)


        # 1. 分組框:Box基礎參數
        grp_box_params = GroupBox()
        grp_box_params.Text = "Box幾何參數(支持mm/cm/m單位)"
        grp_box_params.Location = Point(15, 15)
        grp_box_params.Size = Size(440, 200)
        self.Controls.Add(grp_box_params)


        # 位置參數 - X起始位置
        lbl_xpos = Label()
        lbl_xpos.Text = "X:"
        lbl_xpos.Location = Point(30, 40)
        lbl_xpos.Size = Size(80, 25)
        grp_box_params.Controls.Add(lbl_xpos)
        self.txt_xpos = TextBox()
        self.txt_xpos.Location = Point(110, 40)
        self.txt_xpos.Size = Size(100, 25)
        self.txt_xpos.Text = "0mm"
        grp_box_params.Controls.Add(self.txt_xpos)





# 程序入口(核心運行邏輯)
if __name__ == "__main__":
    # 創建窗口實例
    empty_form = MaxwellWindow()
    # 顯示窗口(阻塞式,關閉窗口后才退出)
    empty_form.ShowDialog()
    # 釋放窗口資源
    empty_form.Dispose()



登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP