原创 第7节 Labwindows/CVI中GRAPH控件相关设置

2012-4-8 23:01 16462 16 18 分类: 软件与OS 文集: Labwindows技术板块

Labwindows/CVI中GRAPH控件相关设置

1、Graph控件设置面板介绍

如图,主要分四个部分:

   (1) Source code connection源代码连接相关的设置,包含控件的名字和控件的回调函数,此处没有这只回调函数。

   (2) Control Settings控件设置部分,

  • 包含控件的模式control mode,主要模式有hot,normal和Indicator(仅仅作为显示,不能用来调用回调函数)三种。
  • Data Mode数据模式,主要有retain和Discard两种。
  • Zoom Style
  • Copy Original Plot Data
  • Editable Graph Axes 可以对控件进行编辑
  • Smooth Update
  • Initially Dimmed 阴影状态,不可用
  • Initially Hidden 控件被隐藏
  • 坐标轴相关的设置

     (3)Control Appearance控件的显示设置

          主要包括坐标轴的名字的显示,及其字体等。

     (4)Label Appearance控件面板旁有个小黑色的Label的设置。

2、在CVI中的GRAPH控件的属性设置中,有两种方法:

        第一种,通过面板直接设置

        CVI中的Graph控件的坐标总共有4个,x轴分上下坐标,y分左右坐标。具体设置方法,以X的Bottom X坐标为例,方法如下过程:

        双击程序*.uir界面中的Graph控件,进入Graph控件的Edit Graph编辑界面,单击Control Settings中的Bottom X-axis就进入下底部的X轴的编辑界面,如图所示。

        编辑界面中包含的信息有:Axis Name 坐标的名字;Minimum坐标最小值;Maximum坐标最大值;offset坐标的偏置,一般设置为0;Gain坐标增益,实际坐标显示的结果是为最大值、最小值乘以Gain得到,所以一般为设置为1;Divisions坐标分为多少个刻度,此时选择的Auto Divisions自动分刻度,所以为阴影;Precision 坐标数据的小数位位数; Padding显示数据位数,如果设置为3,0就是显示为000;Display Format 显示格式等,其他的就不详细讲解。

       在这个界面上我们可以自己设置坐标的最大值,最小值,显示格式等等信息,这个比较方便和简单。其他坐标设置方式一样。如果不想显示过多的坐标,就可以在相对应的坐标设置下将Show Labels的“钩”去掉,就可以取消不需要的坐标。

      第二种,通过程序间接设置坐标轴的增益来改变坐标值。

       主要通过函数SetCtrlAttribute来设置Graph控件的一些属性。这个函数在其他控件上用的很多,一些主要的属性设置都很简单,比如,设置Graph控件的模式,即Control Mode 的设置,可以用遮掩的代码:

        SetCtrlAttribute(panelHandle,PANEL_GRAPH,ATTR_CTRL_MODE,VAL_HOT); 

       但是,在设置坐标的刻度数据的时候,CVI中没有具体的设置函数,SetCtrlAttribute函数也不能直接实现,因此,通过程序代码不能直接实现对坐标轴刻度数据的修改,需要进行间接地修改,方法如下:

    char axis_xy[10];

    double axis_x;

    double axis_y;

    double  aa;

    double ab; 

           GetCtrlVal(panelHandle,PANEL_STRING,axis_xy);

           Fmt(&axis_x,"%f<%s",axis_xy);

           aa = axis_x/100;

           GetCtrlVal(panelHandle,PANEL_STRING_2,axis_xy);

           Fmt(&axis_y,"%f<%s",axis_xy);

           ab = axis_y/100;   

    SetCtrlAttribute(panelHandle,PANEL_GRAPH,ATTR_XAXIS_GAIN,aa);

   SetCtrlAttribute(panelHandle,PANEL_GRAPH,ATTR_YAXIS_GAIN,ab);

        PANEL_STRING和PANEL_STRING_2是两个输入数据string控件,用来设定坐标轴的刻度。先得到x坐标的字符串,通过Fmt函数将字符串转换成float类型的数据保存在axis_x中,作为x坐标设定值,同样得到y坐标的设定值放在axis_y中,然后经过一个运算,将新的设定值和以前面板中设置的x、y轴的最大值相除,求出一个Gain增益值。然后通过设定坐标的增益值来设定我们需要的坐标刻度,从而完成坐标轴刻度的变化。此处的100就是通过面板设定的一个坐标的最大值。

第三种,通过函数直接设置

采用的函数为SetAxisScalingMode,通过此函数可以直接对坐标值进行设置,比较方便快捷。函数原型如下:

int SetAxisScalingMode (int panelHandle, int controlID, int axis, int axisScaling, double min, double max);

panelHandle:面板的句柄

int controlID:控件ID

int axis:Graph控件的坐标轴,主要有下面几个:

          VAL_BOTTOM_XAXIS (graphs only)
          VAL_TOP_XAXIS (graphs only)
          VAL_LEFT_YAXIS (graphs and strip charts)
          VAL_RIGHT_YAXIS (graphs and strip charts)  

int axisScaling:控件显示图像时的扫描方式:

VAL_MANUAL:根据设定的范围min和max来扫描显示,

VAL_AUTOSCALE:更加数据的多少自动扫描,跟设定的范围min和max没有关系,在strip chart不适用。

VAL_LOCK:手动设置,但是保持原来的方式扫描方式不变,设定的范围min和max是改变的,一般情况是自动模式
 
 

     

作者: sharcky, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-221763.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

用户377235 2013-4-19 21:11

很有用的知识,为了这个事情看了一天的help,谢谢博主了啊

用户436075 2013-3-7 10:18

你好!怎么设置一个TEXTBOX 控件的模糊状态
相关推荐阅读
sharcky 2020-06-07 21:37
技术书籍分享
最近将自己一直积累收藏的一些电子书籍拿出来给大家分享一下,希望对大家有帮助!电子电路相关书籍: (1)有源滤波器的设计手册.pdf 下载地址:http://www.yimuhe.com/file...
sharcky 2020-06-07 20:57
第9节 CVI添加日历控件及操作
1、如何添加日历控件 (1)在需要添加日历控件的界面,点击鼠标右键,选择“ActiveX…”,如图3-1所示。然后进入选择外部插件的界面,如图3-2所示。 图3-1 添加外部控件 图3-...
sharcky 2020-06-07 20:52
第8节 鼠标右键实现菜单功能
(1)在主界面下,新建一个界面,菜单Create中,选择Panel..,直接就生成一个新的面板,双击新建的面板,修改参数。 图2-1 右键菜单面板参数设置界面 如图2-1所示,设置界面的名称代...
sharcky 2020-06-07 18:14
第1节 CVI实现无标题栏界面如何实现界面的移动
(1)首先需要在主界面添加一个函数,如图1所示,在Callback function 中加入主界面回调函数,命名为mainTableFunction,点击“ok”按钮确定设置。 图1 程序的主界...
sharcky 2013-03-03 13:37
放大电路的级间耦合及多级放大电路
   电子设备中所用的放大电路常将微弱的信号放大,使之成为能带动负载的有用信号。这就要求放大电路有很高的放大倍数,并能输出一定的功率。单级放大器通常是无法胜任的。通常将若干个单...
sharcky 2013-03-03 13:31
交流信号幅度的微小变化的检测,遇到问题...
1、引言:分子力学研究一个或多个分子的非键合原子的相互作用,它能够决定某种结构的空间构型或邻近分子导致的构型转变,概括地说,分子力学是分子结构、相互作用及其变化的模型,以及根据物理和物理化学第一定...
EE直播间
更多
我要评论
2
16
关闭 站长推荐上一条 /3 下一条