LINE方法(当然需要使用坐标参数,联机说明有详细介绍)只能应用于报表而不能应用于窗体。
若要在ACCESS窗体里面划线,我建议你使用下列两种办法:
1)如果你VB比较熟练,可用VB设计一个带LINE方法的自定义ActiveX控件,然后再在ACCESS
VBA中引用该控件,之后将你的自定义控件添加到ACCESS窗体里面,你就可以使用那个ActiveX控件的LINE方法在该控件里绘图划线了;
2)使用ACCESS提供的内置直线控件(Line)。
首先在ACCESS窗体里放置若干个Line控件(要用多少个就放置多少个)将Visible属性设置为False,给不同用途的Line控件分别命名为:类型加尾号,例如:X轴标尺1,X轴标尺2,...
斜线1,斜线2.....
直线1,直线2,......等等
以便以后可集中而不必为每一个控件壹壹设置属性以提高效率,其它属性暂时不理。
使用VBA语言设置Line控件的各种属性在窗体里的特定位置画线,例如:
画斜线
with
斜线1
.Top=300
‘单位:缇
相当于一个像素
567缇=1厘米
.LineSlant=False
'
确定线条左斜还是右斜
.Left=200
.width=800
.height=400
.visible=true
end
with
画水平线
with
直线2
.Top=300
.Left=900
.width=350
.height=0
.visible=true
end
with
画垂直线
with
直线3
.Top=300
.Left=900
.width=0
.height=300
.visible=true
end
with
直线的粗细
用BorderWidth属性设置(取值范围0-6,单位为磅)
直线的颜色
用Bordercolor属性设置(例如取
vbBlue,vbGreen,vbRed
等等)
特别提醒一下,除了使用直线控件外,其实你还可以使用其它类型的控件来画图,这要看你的想象力了。
只要你正确设置各种画线控件的绝对和相对位置及各种属性值,充分利用VBA的循环、判断等语句相信你能够在ACCESS窗体里画出各种效果相当不错的图形,如果配合Timer甚至还能绘出动画效果!
具体的VBA实现代码这里就不写了,祝你成功!
MATLAB GUI中是有直线控件的。
在MATLAB命令行中输入guide,回车,进入GUI的界面。
左边两列为基本的控件单元,分别有:按钮、滑动条、单选按钮、复选框、可编辑文本、静态文本、d出式菜单、列表框、切换按钮、表、坐标区、面板、按钮组、ActiveX控件。网格上方的工具中,常用的按钮有:对齐对象、菜单编辑器、运行图窗。
选择需要的控件,摆放在界面中即可。
双击每个控件,会d出该控件的检查器,里面有很多属性
每一个控件都有唯一的Tag标注用于区别,在创建好控件之后,对应的Tag值就会存入handles句柄的结构体中。Tag的值会与回调函数的函数名相关联。
Handles句柄这个结构体中的属性都是全局变量,用于在不同的回调函数之间实现参数的传递。如handles.edit1代表的就是可编辑文本框1这个对象。
在函数中的局部变量可以通过新建handles结构体的属性,变成全局变量,记得一定要更新这个结构体。
guidata(hObject,handles)。就可以实现在其他所有的函数中调用handles.Threshold这个属性的值。
MATLAB GUI注意事项:
一般情况下,及时删除了控件,也不要随意删掉.m文件中的看似没有用到的代码,这样很容易出错。
这个很简单的新建一个类继承UserControl 嘿嘿 也就是新建一个用户控件
定义一个线的颜色再定义一个线的高度
private Color lineColor = Color.Black
private int lineHeight = 1
封闭它们
重写onPaint方法
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e)
e.Graphics.DrawLine(new Pen(lineColor), 1, 1, this.Width,lineHeight)
}
这样就OK了 是不是很简单呀
重新生成一下项目 工具箱里是不是有你刚才定义好的控件了
没用过autocad 我想你不会要这条线能拐弯吧 如果不是 那么现在这些功能应该差不多了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)