CAD光标控制
设置光标线显示长度:
| COM接口 | _DMxDrawX::CursorLong |
| _DMxDrawX::SetCursorCrossLong | |
| C++ | MxDraw::SetCursorCrossLong |
设置为0表示无限长:CursorLong= 0,默认值为30。
设置光标矩形框大小:
| COM接口 | _DMxDrawX::CursorWidth |
| _DMxDrawX::SetCursorPickRect | |
| C++ | MxDraw::SetCursorPickRect |
默认值为6 ,单位是屏幕像素大小。
自定义设置光标
COM接口,临时需要改变光标,用如下函数完成:
| 保存光标状态,与RestoreCursor配合使用 | _DMxDrawX::SaveCursor |
| 设置光标,从cur光标文件加载 | _DMxDrawX::SetCursor |
| 恢复光标 | _DMxDrawX::RestoreCursor |
C++接口,该函数有三个重载,从光标文件(cur)加载光标,从光标资源中加载,设置内置光标MxDraw::SetCursor。
得到光标函数,用于备份光标,在需要时恢复光标MxDraw::GetCursor。
设置默认缺省时光标
| COM接口 | _DMxDrawX::UseArrowCursor |
设置默认使用箭头光标,不要使用缺省的十字光标:
<param name="UseArrowCursor" value="1">
从文件加载一个默认光标,控件默认状态下将使用这个光标,路径是个相对MxDrawX.ocx所在目录下的文件。
Iniset属性,DEFAULTCURSOR=MyCursor.cur。
例如JS:
<param name="Iniset" value="DEFAULTCURSOR=MyCursor.cur">
| C++接口 | MxDraw::SetDefaultCursor |
void CMxDrawXCtrl::SetUseArrowCursor(VARIANT_BOOL newVal)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
m_UseArrowCursor = (newVal != VARIANT_FALSE);
if(m_UseArrowCursor)
{
MxDraw::SetDefaultCursor(::LoadCursor(NULL, IDC_ARROW),m_hDrawOcx);
}
else
{
MxDraw::SetDefaultCursor(NULL,m_hDrawOcx);
}
SetModifiedFlag();
}
光标位置
得到位置,文档坐标,是个MxDrawPoint对象。
| COM接口 | _DMxDrawX::GetInputCursorPos |
设置光标位置,文档坐标。
| COM接口 | _DMxDrawX::SetInputCursorPos |
浙公网安备 33010602011771号