CANoe学习记录(二)仪表控件
仪表控件
首先需要考虑的是,仪表控件是自己做一套控件出来,还是用别人的控件;
- 如果是别人的控件,就可能会出现一系列的问题
- 自己做控件的话,需要了解控件的整个制作过程,然后形成一个控件库。
C#中组件与控件的主要区别
用户控件(UserControl.cs)和组件类(Component.cs)这两者有什么区别???
控件一般是为了完成特定的展示或特定页面/窗体的技术功能,而组件一般指对一些小功能点的封装,封装后的集合(组件)一般具有较独立的功能,可以完成某一项任务。所以控件是为了页面/窗体级复用而出现的,而组件是为了项目级复用而出现的,从这个意义上来说,组件的意思更接近于模块。
参考链接:C#中组件与控件的主要区别是什么
CANoe中常用控件
下图为CANoe中常用的控件以及这些控件所对应的列表
Control类和UserControl类的区别
控件开发应该注意的问题
控件的属性
private int interval = 10;
/// <summary>
/// 刻度间隔
/// </summary>
public int Interval
{
get { return interval; }
set { interval = value; }
}
在控件的属性页可以看到Interval,通过上述代码即可实现属性设置
实现控件拖动后,落在鼠标停留在panel中的位置
Point screenPoint = Control.MousePosition;//鼠标相对于屏幕左上角的坐标
Point formPoint = this.PointToClient(Control.MousePosition);//鼠标相对于窗体左上角的坐标
Point contextMenuPoint = TextBox1.PointToClient(Control.MousePosition); //鼠标相对于TextBox1左上角的坐标