📄 standard_module.bas
字号:
Attribute VB_Name = "Standard_Module"
Option Explicit
' ***********************************************************************
' 目的: 标准功能模块
' 作者: Huting <tianshuen@gmail.com>
' 编程语言: VB
' 语言: 中文
' CATIA Level: V5R17
' ***********************************************************************
' --------------------------------------------------------------
' 窗口属性设定API声明
' --------------------------------------------------------------
Private Declare Function SetWindowPos Lib "user32" ( _
ByVal hwnd As Long, _
ByVal hWndInsertAfter As Long, _
ByVal X As Long, ByVal Y As Long, _
ByVal cx As Long, ByVal cy As Long, _
ByVal wFlags As Long) As Long
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1
Private Const HWND_TOPMOST = -1
Private Const HWND_NOTOPMOST = -2
' --------------------------------------------------------------
' 基本变量定义
' --------------------------------------------------------------
Public CATIA As INFITF.Application
Public oRootProduct 'As Product
Public ArmMech 'As Mechanism
Public cTheMeasure
' ***********************************************************************
' 目的: 初始化CATIA产品文档,并初始化必要的基本变量
'
' 输入: bNewProduct: 初始化时是否新建产品文件
' 可选,默认新建文件
' strProduct: 初始化时是否打开已经存在的产品文件
' 可选,默认新建文件
' ***********************************************************************
Sub InitCATIA()
' On Error Resume Next
Set CATIA = GetObject(, "CATIA.Application")
Set oRootProduct = CATIA.ActiveDocument.Product
If oRootProduct Is Nothing Then
MsgBox "文件未打开!", vbCritical
End
End If
Dim cTheMechanisms As Mechanisms
Set cTheMechanisms = oRootProduct.GetTechnologicalObject("Mechanisms")
Set cTheMeasure = oRootProduct.Parameters
Set ArmMech = cTheMechanisms.Item("Arm")
If ArmMech Is Nothing Then
MsgBox "请打开正确的文件!", vbCritical
End
End If
On Error GoTo 0
End Sub
' ***********************************************************************
' 目的: 设置窗口使其始终在其它窗口上面
'
' 输入: iHwnd: 要设置的窗口句柄
' bOnTop: 设置或取消窗口的置顶属性
' 可选,默认为真
' ***********************************************************************
Sub MakeMeOnTop(iHwnd As Long, Optional bOnTop As Boolean = True)
If bOnTop Then
SetWindowPos iHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE + SWP_NOSIZE
Else
SetWindowPos iHwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE + SWP_NOSIZE
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -