主要用到函数说明:
MxDrawXCustomFunction::Mx_SetSysVar
设置系统变量。详细说明如下:
参数 | 说明 |
---|
CString sVarName
|
系统变量名
|
Value
|
需要设置的值
|
设置系统变量DYNINPUT值为0:
1
2
3
4
5
|
Dim param As MxDrawResbuf
Set param = New MxDrawResbuf
param.AddString "DYNINPUT"
param.AddLong 0, 5010 '5010 = RTLONG
MxDrawX1.CallEx "Mx_SetSysVar" , param
|
回答:
设置图层 :
1
2
3
4
5
|
Dim param As MxDrawResbuf
Set param = New MxDrawResbuf
param.AddString "CLAYER"
param.AddString "图层1" , 5005 ' 5005 = RTSTR,代码是一个字符串类型的值
MxDrawX1.CallEx "Mx_SetSysVar" , param
|
回答:
设置线型:
1
2
3
4
5
|
Dim param As MxDrawResbuf
Set param = New MxDrawResbuf
param.AddString "CELTYPE"
param.AddString "DOT" , 5005 ' 5005 = RTSTR,代码是一个字符串类型的值
MxDrawX1.CallEx "Mx_SetSysVar" , param
|
回答:
设置线型设置颜色:
1
2
3
4
5
|
Dim param As MxDrawResbuf
Set param = New MxDrawResbuf
param.AddString "CECOLOR"
param.AddLong 255, 5010 ' 5010 = RTLONG,代码是长整型变量的值,255是RGB组合值。
MxDrawX1.CallEx "Mx_SetSysVar" , param
|
回答:
设置栅格,和栅格距离:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
// 打开栅格捕捉
axMxDrawX1.SetSysVarLong( "GRIDMODE" , 1);
// 设置捕捉间距
MxDrawResbuf param = new MxDrawResbuf();
MxDrawPoint ptSNAPUNIT = new MxDrawPoint();
ptSNAPUNIT.x = 500;
ptSNAPUNIT.y = 500;
param.AddString( "SNAPUNIT" );
param.AddPointEx(ptSNAPUNIT,5002);
axMxDrawX1.CallEx( "Mx_SetSysVar" , param);
|
回答:
修改图纸的字符编码:
1
2
3
4
5
6
|
MxDrawResbuf param = new MxDrawResbuf();
param.AddString ( "DWGCODEPAGE" );
param.AddString ( "ansi_936" );
MxDrawApplication app = new MxDrawApplication();
app.CallEx( "Mx_SetSysVar" , param);
|