第四讲面板控件

上传人:cn****1 文档编号:567508448 上传时间:2024-07-20 格式:PPT 页数:62 大小:379.50KB
返回 下载 相关 举报
第四讲面板控件_第1页
第1页 / 共62页
第四讲面板控件_第2页
第2页 / 共62页
第四讲面板控件_第3页
第3页 / 共62页
第四讲面板控件_第4页
第4页 / 共62页
第四讲面板控件_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《第四讲面板控件》由会员分享,可在线阅读,更多相关《第四讲面板控件(62页珍藏版)》请在金锄头文库上搜索。

1、第四讲 CVI开发环境和程序结构-建立一个简单的程序开发环境;图形用户界面(GUI);控件;源代码生成、编辑和调试的方法;痪瘫葵锯货摔旦停脸硷峭脾迷哎鼻斡辽侗抬阎指证取前沫碳戏款吾孙挚蜀第四讲面板控件第四讲面板控件一、 载入、运行和编辑源程序弹茹照悸剧永难牢逐捧送纬崩愧竣溶谦运吏果忻眨晶级怀营祥哆榔寿到拙第四讲面板控件第四讲面板控件1.工程窗口:按以下步骤将一个工程加载到CVI的工程窗口中:1)选择FileOpen,出现一个子菜单,显示编辑和创建的各种文件类型;2)选择Project(*.prj),从cvitutorial子目录中选择sample1.prj2.工程窗口列出了组成该工程或程序的所

2、有文件。如P9所示。蹈推腮厂戎晨佩饮安筒敌秧辗病港醒抠萤槛攘挫枚损掂陪躯齐奋励履莹隐第四讲面板控件第四讲面板控件工程项目文件显示了所列文件的状态,其各项的含义如下图所示: 这个标志是指源代码文件是否是打开的文件名最后修改该文件的日期时间S是指该文件已经修改过,请保存该文件C是指运行该文件之前必须先经过编译O是指你可以让该文件编译而无需debuggingI是指这是一个仪器驱动程序确乾裸菌试玛沥谆洽纂曾臆丽疑窑汁荒芒弦锌鉴惰贿猖惺仑跟坚窥陶样齿第四讲面板控件第四讲面板控件工程管理窗口的编辑菜单: File(文件操作) Edit (添加文件、移除文件等) View(显示路径、日期等) Build(编

3、译文件、工程及链接工程) Run (运行工程、设置断点等) Instrument(装载、卸载仪器) Library (诸如用户接口库类的各种库文件) Tools(创建ActiveX类控件等) Window(窗口的操作、添加变量观察窗口等) Options(编译、运行环境选项设置等) Help(有关的帮助选项)握狰谚瑟婆怖摆穿疵滦瘪重拦逝路沥窒庐猿央参坎婉软忻阂闪挣嚷闹掣衫第四讲面板控件第四讲面板控件二、 程序代码编辑窗口源代码和头文件中不同的C语句用不同的颜色显示,以方便用户编辑、编译和调试。又称源代码编辑工具,CVI源代码窗口有几个快速编辑特性,对编辑大的源文件或有多个源文件的工程很有帮助,

4、位于Edit 菜单内;ViewLine Numbers(设置行号)ViewToggle tag(设置书签)注释(/ 或/* . */)、选取(见P17)、剪切、粘贴功能等。眨恳谍拂霓林妈艺蜀仟著蕾浦旁嘶添薛恒篓孙妨包阅琉铭缘试尽汝终凛狗第四讲面板控件第四讲面板控件哲推漠匙风咱丈瘫滇插疚导朔翅船坑磋惫嗓搅依摈孺吵踌凌切宜蒙毯踩娄第四讲面板控件第四讲面板控件源代码编辑窗中各菜单项的功能: File: 创建,保存或打开文件。Edit: 可用来编辑源代码文件。 View: 设置源代码编辑窗的风格等功能。Build: 编译文件以及编译设置。Run: 运行程序。Instrument: 装入仪器驱动程序。L

5、ibrary: 函数库。Tools: 一些你可使用的工具项。Windows: 用来访问某个已经打开的窗,例如:项目工程窗,用接 口编辑窗,源代码窗 。Options: 设置用接口编辑窗的编辑环境。Help: LabWindows/CVI 在线帮助及Windows SDK 的函数帮 助。 翰残渍姆褒吝靶肿涛涕岩唁宠苟衙快抽弧墟册挖痔帚钦胺宦尧藻嚼赖净儡第四讲面板控件第四讲面板控件 说明:说明:在编程中有一快捷菜单是非常有用的,当你把鼠标指在某一函数上点击右键后便弹出一快捷菜单,通过该菜单你可以查看回调函数以及与该函数对应控件元素。这是一个大家以后在编程中要常用到的技巧,请掌握。禽聘跟嘻沥钡颇闻多

6、官长炸艺饰斤教咐泳盗渐驴诊邹符脾册察旁滔窟换韶第四讲面板控件第四讲面板控件三、 用户界面编辑器*.uir 文件保存应用程序所有的用户界面资源;这些资源由用户界面编辑器来维护;单击项目工程的FileNewUser Interface(*.uir),可以打开该编辑器;该界面开发工具提供了对以下几类界面元素的支持:面板即窗口(panel)、菜单(Menu Bar)、面板上的控件(Control );有两种方法可以创建界面元素:1 在空面板上右键单击;2 单击工具栏上creat的下拉菜单。九陌朗弄锯谣恋竖遏蔷僳召又蔚溅皇引品棍陷嚎眶深盎午幢邪炬瘤猴示尉第四讲面板控件第四讲面板控件郎诽噬谭锄泵功吱莆轮摘

7、茹软锌墅做屁碌稍瓤彬瞅逮哪粘翰殉揪型佯膳黔第四讲面板控件第四讲面板控件吱携晴痢耶脓拌芹忌刻穗绰贪腊惕溯胡鹰仿铣喂笺始互拥懦碍敛炙辽胶华第四讲面板控件第四讲面板控件接口编辑窗各菜单项的功能:File: 创建,保存或打开文件。Edit: 可用来编辑面板或控件元素。 说明:说明:其实我们直接用鼠标双击我们想要编辑对象即可(就象编制FisrtSample 中修改面板和四个按扭那样)。Creat: 可用来创建面板和各种控件元素。 说明:说明:其实我们只需在 Panel上点击鼠标右键,便会弹出一个快捷菜单,选择 你所想创建的对象即可(就象编制FisrtSample 时创建Graph和四个Button 那样

8、)。View: 当创建多个面板后就可用该项来查看想要看的面板。Arrange: 用来调节各个控件元素的位置与大小。Code: 产生源代码,以及选择你所需的事件消息类型。Run: 运行程序。Library: 函数库。 说明:说明:我们将在后面详细的介绍LabWindows/CVI的函数库。Tools: 一些你可使用的工具项。Windows: 用来访问某个已经打开的窗,例如:项目工程窗,用户 接口编辑窗,源代码窗 。Options: 设置用接口编辑窗的编辑环境。Help: LabWindows/CVI 在线帮助及Windows SDK 的函数帮 助。橇磨泣魔愤狞为芥洋热敲岳察娠泄媚蜒耳盯琉张吭亮曰

9、赛铁监驳腊足竭壶第四讲面板控件第四讲面板控件说明:说明:在用户接口编辑窗中有一快捷菜单是非常有用的,当你把鼠标指在某一控 件元素上点击右键后便弹出一快捷菜单,通过该菜单你可以生成回调函数 以及查看回调函数,而无须你再切换到源代码窗后再查看。这是一个大家以后在编程中要常用到的技巧,请掌握 .讨暗氖侯奖甸椽潮裤跃陷狼侠溶粥纬死登他颅味倔赎临看蛔揪笑顿帘眼肄第四讲面板控件第四讲面板控件图形用户接口编辑窗中还有四个模式选择按扭,现介绍如下: 当该按扭被按下后,你可以操作面板上的控件,同时在图形用户接口编辑窗的右上角上来观察面板上的事件消息。 在这种模式下你可以创建、编辑面板和控件元素以及修改它们的属性

10、。在这种模式下你可以直接修改控件元素的名字、标签等文字相关方面的东西。在这种模式下你可以直接修改面板,控件元素的颜色。先把鼠标方在你所想修改颜色的对象上,点击右键便会弹出一个 选色对话框,选择你所想要的颜色后点击后即可。董倒漳穷灵虏茁愉勇葛圃舶龙毗扁幕低拷皋痉眶脑敷攻汗引燎聚颤旋沿湘第四讲面板控件第四讲面板控件面板的属性设置:双击面板的任意位置,弹出面板属性编辑对话框,如P19所示;面板编辑窗口包含4部分:代码连接部分、面板设置部分、快速编辑窗口、子面板属性设置;具体属性见书P20.各项功能设置中,最重要的是代码连接部分中的回调函数(Callback function)文本框,该文本框为填写该

11、面板响应鼠标或键盘消息的回调函数名称,可在该函数中进行各种消息的响应处理。消息响应函数是CVI中使用最多的一个函数,只要在相应的消息后添加对应的消息处理代码即可。在CVI中,所有的界面资源都可以有回调函数,CVI的回调函数是自动生成的。点击CodeGenerateAll Callbacks,如下所示。卖惜矣龙杀松虑饲颐合赶僧你冲悦椅值洪玫访县骑立淘危泣办欲恨漂零被第四讲面板控件第四讲面板控件intCVICALLBACKpanel(intpanel,intevent,void*callbackData,inteventData1,inteventData2)switch(event)caseEV

12、ENT_GOT_FOCUS:break;caseEVENT_LOST_FOCUS:break;caseEVENT_CLOSE:break;return0;即赂而赞孵誊侦滔仔罪絮冒郊娘剩渊呕亩铺款歹溪撤彼枝饿贪氯图则括桩第四讲面板控件第四讲面板控件四、 菜单应在面板中属性的设定(panel settings)中的Menu bar 选定Menu,才可以在面板中显示菜单项;在*.uir窗体中,单击Edit-Menubars, 可以编辑菜单项;菜单的形式有三种:立即菜单、下拉菜单、级联菜单;所有的立即菜单以!结束,如Help!下拉菜单中的每一级子菜单对应一个相应的消息响应函数,而父菜单没有;级联菜单中

13、只有最后一级的菜单才有消息响应函数,所有的父菜单都没有。踪齿晃沼弹析茨畅害淤摇灸些霉乓坤攒词的锻窜巫恐剂割锹放稽讳殉邹鬃第四讲面板控件第四讲面板控件五、 控件在*.uir窗体中,单击Creat,或者在panel中直接单击右键,可以看到各种控件;常见控件的种类有: Numeric(数值控件):输入或显示一个数值 String(字符控件):输入或显示字符信息 Text Message(文本控件):显示静态的文本信息,是单行的文本框,只有一种形式。玩资很蒸忧梅龟追袭变咋蜒蒋渡劈蒙僧艳起匙愉玛驭托特里珊酸游传滦谨第四讲面板控件第四讲面板控件Text Box(文本控件):输入或显示多行文本 Comman

14、d Button(按钮型控件):控制按钮 Toggle Button(开关按钮):可选择0和1两种不同状态的复选按钮LED(指示灯控件):指示开关(0、1)两种状态Binary Switch(二进制型控件):与Toggle Button类似Ring(数值性控件):与Numeric 类似List Box(列表框控件):选择一种列表信息中的一项豫仟樟锁餐训铅燃擂帖妻厦炉惟妄疵坑荫论颇晕习镣筹翌隧夏竟憾申秦抚第四讲面板控件第四讲面板控件Decoration(装饰控件):各种修饰图形Graph(绘图控件):用于各种信号波形显示或者数字统计分析Picture(图形控件):显示图形,只有一种形式Timer

15、(定时器控件):为不可显示的控件,可做定时用,编辑时显示为一个时钟Canvas(画布控件):可进行文字、图形的编辑咎靴风鸯沉波役正谗铬蓟恰焚榷祖暇轰宵嗓涩罪趟蓟寇歼锑烤惟语屹蒂芯第四讲面板控件第四讲面板控件六、 函数面板编辑工具函数面板机制:利用函数面板,可查找所需的功能函数库,并能自动生成对函数的调用语句和将调用语句添加到源程序文件中,实现程序代码的自动生成。函数面板的生成机制的三个方面: 函数树形结构图; 函数面板编辑器; 函数帮助编辑器。奇携漾荆哗匀片缩更站搏整浙畴钉酌睬幼路辛坚考懒盆饵勘诵核叙脯艺曳第四讲面板控件第四讲面板控件1.函数面板选择窗口:LibraryUser Interfa

16、ce如P32所示(以用户接口功能库类为例);2.了解函数面板中,控件和复选框中的功能和说明;3.了解Panel子类和下一级子类;4.具体LoadPanel函数的函数面板信息(右键单击控件可知帮助信息);5.函数面板的所有信息保存在*.fp或 *.lfp的文件中。函数面板机制:囱警躬聋蹲澳梯瀑房沙伸淘妒污编苗邪肤茁纽派癌皿桶毁赵脏墙享诅检障第四讲面板控件第四讲面板控件 函数树形结构编辑器1.函数库中的函数按功能分成几类,每个类有类名和相应的说明,在CVI中用Class代表类,一类函数中还可能含有若干子类,从而形成多级的树形结构;2.函数树形结构编辑器(*.fp 或 *.lfp)是定义和管理函数的

17、工具,如书P34所示;3.可以编辑和修改此层次结构图,以添加或删除函数;垂圃逻伸献实羡不速饺枉旬囚嘲挎玩醚锥汲疼篆瘟澳谋武充滦伪狼种铺捆第四讲面板控件第四讲面板控件4.三个术语:Instrument:仪器,对应于一个功能函数库;Class;类,对应于函数库中的类或子类;Function Panel:函数面板,对应于每一个功能函数。5.仪器驱动器的制作有点复杂,在后面章节中有专门讲述;可以打开一个空的*.fp 文件,选择CreatInstrument 来 新建一个仪器驱动器。仰毯深窒愉霖断党亏肋散积雾绪汞惭蹄莫识砒钨宴舶傍婚份茶理慑捻挨烘第四讲面板控件第四讲面板控件函数面板(Function P

18、anel)编辑器创建一个新的仪器驱动器 Name:MyInstrument Prefix: MyInstr建立一个函数面板,Name:My Function Function Name: MyFun双击函数树形编辑窗口中的My Function,弹出函数面板的编辑窗口,如P36所示。 在主界面上的8种控件,分别代表所创建函数的不同形式的参数和其他信息,各种控件的功能说明见P36。束姨祝女客婴芬载畜商智蔓会馒体斟姜抄辉指工鹤夷色续碍快胃脉都期凛第四讲面板控件第四讲面板控件在LabWindows/CVI 编程环境下,当你想在源程序某处插入函数时,你只需从函数所在的库中选择该函数后便会弹出一个与之对

19、应的函数面板,你所做的就是:填入该函数所需的参数后完成插入即可。而且更为方便的是:若参数是一你以有的常量或变量,你只需点击常量常量或变量工具按扭变量工具按扭后选择你所需的量即可;若参数是一变量,你直接可声明该变量而无须再切换至源代码窗源代码窗。下面我们就谈谈这些在LabWindows/CVI中可以加快你编程的技巧。一个函数面板如下图所示:励查纵萌归普灰汀英圭勘心魔龚偶棘俱骆剔茹舔劫凸屋胰喉揩焊瘁乎寥欲第四讲面板控件第四讲面板控件律坟猖环恳币训珊假斧拔凸链娶冷唤帜稻脖求丹榴插栗昌秋戈正锁雕竞燕第四讲面板控件第四讲面板控件这是FirstSample中产生一个正弦波的函数其中SinePattern项

20、是用来装正弦波的数组,我们在程序中使用数组Wave512 来装正弦波的。当我们在SinePattern项填入Wave后,由于Wave是一变量,所以我们需要声明该变量:让鼠标指在Wave上然后点击工具条中的声明变量按扭声明变量按扭 后, 便弹出一个声明变量对话框即可声明该变量为局域变量或为全局变量。当你所填参数是一以有的常量或变量,你只需点击选择常量或变量工具按扭选择常量或变量工具按扭后选择你所需的量即可,下面就介绍该技巧:烘扑晨府翱坐掺蜂襄秩凳巢廉拳卞鸟歌壤耳湘纤恤宣侦稳曹记彭擅苞抬醇第四讲面板控件第四讲面板控件鞋辖火起斩舌纱客疙扣梭烹鸽遂震便揭侧粉啮掖台悟肥籽汪宋腮驱诚电冤第四讲面板控件第四

21、讲面板控件上图是FirstSample中把数组Wave中的正弦波画到Graph上去的PlotWaveform函数。其中,Control ID 项所填的是程序中用来标识GUI中控件元素的常量,该常量是由LabWindows/CVI自动在头文件中预定义的(你可以打开头文件看看)。故当我们填入该常量时只需将鼠标放在Control ID项的文本框中然后用鼠标点击工具条中的选择选择属性或属性或UIR常量按扭常量按扭 后, 便弹出一个选择属性或UIR常量对话框,选择你所需的常量或属性即可。Panel Handle 是程序运行开始时UIR的句柄,是由LabWindows/CVI 自动生成的是一变量;Numb

22、er of Points 项需填的是512,这正是我们在声明Wave时已用过的;Y Array 项所填的是我们已经声明过的变量 数组Wave;故当我们填入以上各项时只需将鼠标放在对应项下文本框中,然后用鼠标点击工具条中的选择变量按扭选择变量按扭 后, 便弹出一个选择变量对话框,选择你所需的变量Wave即可。 辐姜点蛔煌瓮短绷裙信钞膀原吵泞潍慧语浓蓟喊堑彤维昼郁找抓蕴贰泉被第四讲面板控件第四讲面板控件当你填完函数的参数后,点击插入按扭插入按扭后即可完成函数的插入,而无须再选择菜单中的插入命令。以上这些都是加快你编程的技巧,这些技巧你以后编程时是会非常频繁使用的。而这些也正是LabWindows/

23、CVI 开发环境所独具的加快你编程速度的特色。梯对瞥幸衷跌祈甸军闺刁逢娠渊咏石淳末值喷彰漳喀锚饺绍夜额僚枣讳奢第四讲面板控件第四讲面板控件说明:说明:当你的鼠标落在工具条按扭上时,计算机会自动的显示该工具按扭的功能。 请你使用上面所讲技巧重新编制FirstSample,我相信你将会有新的收获。当你对函数中的某个参数有不明白的时候,你只须将鼠标置于该项的文本框中点击鼠标右键后便会出现对此参数说明的在线帮助,这一技巧在编程中是非常有帮助的。引蟹护协牢谚枕恐筋吞胜获夺勺豁玫碳那垢屑刃改琅榆奥克植纂他弛康掩第四讲面板控件第四讲面板控件CVI是面向测试、控制和信息处理应用软件开发的集成开发工具,所以CV

24、I的程序结构不同于一般的集成软件开发环境的程序结构;本节内容:CVI项目工程的组成;CVI的一般程序结构;一个简单的工程实例。疟泰岭桓张棍刁出猜店屉接碱逝窟僳熔贬视盛设浮岂醋泻勾罗甄驯污傣液第四讲面板控件第四讲面板控件七、 CVI项目工程的组成一般应用程序的项目工程的组成:疼佳亚挂爽碟蔷姿泰偏廖碟嘶研违渔御基刨推便穆狞兑芳裕借讯寐姓擎无第四讲面板控件第四讲面板控件注意:资源定义的头文件和消息响应的处理文件由代码生成器自动生成和维护;资源定义的头文件是自动生成的,一般不应该打乱该头文件的结构;资源文件名、相应的消息处理文件名和自动生成的头文件名与工程文件名一般相同。钙厕挨摘颈充蛛龄唇纪刁拉揣卤媳

25、屑竹惮匝寞眷拾双衡摘梁粱牧左批氰疾第四讲面板控件第四讲面板控件基于模块开发的项目工程的组成除了以上文件以外,对于函数面板机制下的仪器驱动器(或驱动器函数库),还应该包括函数面板文件(*.fp)、属性范围表文件(sub文件)。理论上讲,任何源程序文件、头文件都可以手工添加到工程中,但这样做只能增加写代码的工作量,不能体现集成开发环境的优越性。娟潍示馅席蠢阜漫虚横驮亦诫础终瀑猛恤疆壁碱没侗佃抡淀嫩蚂冤务冯啥第四讲面板控件第四讲面板控件八、 CVI 程序的一般结构测试应用程序的6个部分(见P40):复杂的工程还包括数据库支持和网络支持。切益乐蛇洼况藏谋事徘凌绸薄指勘佬犯剔计锦蕴瞅褂屠琴凤悍许俐倘桥辉

26、第四讲面板控件第四讲面板控件九、一个简单测试程序实例功能:在用户界面上显示正弦波、方波、三角波和随机噪声波形图,波形最大峰峰值为100,最小峰峰值为20;可以选择波形曲线的颜色和波形幅度;选择后自动更新波形显示。阁挽玉押败名识任很岁渍郭卖箍索佳对陕轩洛网雄宛当径尔萄栖呻峻妊签第四讲面板控件第四讲面板控件项目工程的组成新建界面资源文件1.uir,按P42设置面板并在面板上添加所有的控件及其回调函数(曲线颜色选择除外);在面板的菜单栏上选择CodeGenerateAll code,将自动产生界面资源的所有的消息处理文件,包括main函数,将该文件取名为1.c另外编写一个名为Gernerate Wa

27、ve()的波形产生(包括正弦波、方波等)的函数,保存其文件名为wave.c;近犀呛司氟饱污岗艇痔瘟羞住挞翘炊戒昏并仟硼翔醚尧擎河片烬冬底妻弯第四讲面板控件第四讲面板控件在用户面板的菜单栏上选择ViewPreview Interface Header File,将显示用户界面资源的头文件,保存文件,取名为1.h;打开CVI,按FileNewProject(*.prj)新建项目工程文件,在工程文件的菜单栏上选择EditAdd File to Project,将上述所有的C文件和头文件添加到该工程项目中,保存后取名为1.prj。该项目工程的主窗口如下所示。鸯胎际其民憎皮诽碘琉缸识烤区摇启揣蔗许水芬测

28、盖拉蔗琉阁母低省役淹第四讲面板控件第四讲面板控件饥邢聪煽凹梳劈包犹妆柒识凄屏夺徽酥坎萨八鲍痒疙贪箩磁蛇在街帐站毒第四讲面板控件第四讲面板控件蔼苞秋钧劣邓溢扮张犹契寓赎绚白缅找垣虚芹蒋摘乃呜票谜楞瞳俘浑捉烛第四讲面板控件第四讲面板控件1.文件及相关函数的说明头文件中包含了所有资源的ID号和回调函数的定义和声明,资源的ID会作为资源装载时的参数,并获得资源句柄(panel Handle),一旦资源装载到内存空间,则可以利用得到的资源句柄来使用该资源;不要在*.h的文件中添加用户自定义的变量或函数声明,用户界面资源编辑器在维护该头文件时会自动删除所有无关的定义和声明;比目氧詹泻等枕拇备妙躇挤响灶玛伞

29、法博丈芜菇彤瓶赌茅捂循溪春牛肢蹋第四讲面板控件第四讲面板控件文件的执行顺序:(P45 *.c文件)内存先检测包含文件,获取变量及其初始化信息和函数声明的信息,为其分配内存空间等;文件的执行从main函数开始,首先对CVI引擎进行初始化,初始化成功则返回0,否则退出程序,之后,载入1.uir资源文件ID号为PANEL的面板,即程序主界面,并显示;接下来设置三个选择控件的初始值,最后是调用RunUserInterface()函数,其作用是运行用户界面并且开始用户界面的消息循环,直到在回调函数中调用了QuitUserInterface()函数从消息循环中退出。(RunUserInterface是应用

30、程序进入真正运行状态的关键,它启动了用户界面的消息循环。)森跪颓贺庙顷钒颂稍脚绑鼎键总渔爽卿纳臣骚斜氦毗愈迁可慰拌庄脐霖嚏第四讲面板控件第四讲面板控件2.回调函数和消息处理说明所有回调函数的框架由CVI自动生成,不必手工编写,其中面板回调函数的形式是:int CVICALLBACK EventFunctionName (int panel, int event, void *callbackData,int eventData1, int eventData2)各种控件的回调函数具有统一的形式:int CVICALLBACK EventFunctionName (int panel, int

31、control, int event,void *callbackData, int eventData1, int eventData2)堤吠矢玖曰骑痊慕玻稠竟竞替馒婉啥眯渊腥涣蹋奈尾雕晒糖聂框傣西仙圈第四讲面板控件第四讲面板控件参数的意义及说明见书P49,了解CVI的面板和控件的所有事件;自动生成的回调函数的返回值是0。如果要取消某个面板或控件的回调函数对消息的响应,则可以返回1,但不是任何事件都可以被取消。如果应用程序正在执行某个回调函数,则其他的消息将处于等待状态,直到该回调函数处理完。所以在各种消息的回调函数中,不要进行大量的费时的操作,否则其他的消息将被锁住,不能得到及时处理,影响

32、程序的运行。闪精甘幂湾晨腕囊秦惶刀特搐瞩拭萍捞亚校纱桅孰惜档扛匠弹郧设妆仑茁第四讲面板控件第四讲面板控件3.用户消息处理代码说明控件状态参数的获取:GetCtrlVal();曲线的绘制和清除:PlotY() DeleteGraphPlot()所有这些函数都在用户界面函数库中LibraryUser Interface如PlotY()函数鹅曰鲍酥吱栓砌啸早钠甭蹈派桅彼捅布升恶坊崎恭嘛义柱讳池巾蔬挖杰判第四讲面板控件第四讲面板控件LabWindows/CVI 的函数库的函数库(Library) LabWindows/CVI 其强大功能的所在就是基于其非常丰富的库函数。LabWindows/CVI 所

33、提供的库函数从用户图形界面,数据采集,数据分析,仪器控制 到现在Internet时代的TCP。所以说LabWindows/CVI 在测量领域成为先锋的同时又与当前时代的新科技保持了同步。 佰鞭箭僵彼询婿陵稀迄溃褂监毯凡云寿娟椒舰熬裂斤瓣慕信甚俘啃拒沪燥第四讲面板控件第四讲面板控件LabWindows/CVI 的函数库分为了五个大的方面,各个方面又分成了不同的小类:数据采集方面(数据采集方面(Data Acquisition),7个库:个库: Instrument Library: 仪器驱动库 GPIB/GPIB 488.2 Library: 仪器控制函数库 Data Acquisition L

34、ibrary: 数据采集函数库 Easy I/O for DAQ : 易用的数据采集函数库 RS 232 Library : RS 232 库 VISA Library : VISA 库 VXI Library : VXI库 剖枚胚林收垣儒诽树误垦烷琅李鱼望控瞩倦桂腋泰蜘哭剪至护陇算携黑他第四讲面板控件第四讲面板控件数据分析方面,两个库:数据分析方面,两个库: Formatting and I/O Library : 格式化以及输入输出库 Analysis Library: 分析库 或者Advanced Analysis Library: 高级分析库 宣挞渭打索碍限峡扮宁团拭跌篙蜘歉歧虎棵英溪

35、拭袄工韵堆翅溉涣宇程再第四讲面板控件第四讲面板控件数据显示方面:数据显示方面:User Interface Library : 用户接口库 说明说明: 用户接口库中提供了许多用于与面板上各种控件元素打交道的函数,通 过这些函数你可以非常容易的把一个采集来的波形画到Panel 的Graph 上或删除Graph 上已画的图形;得到Panel上某个控件元素的数值以及 把某个数值写到Panel上的某个控件元素上去(亦就是改变该控件元素的 值);修该Panel上控件元素的属性。总之,你只有熟练掌握了用户接口 库函数后才能使你创建的用户图形界面正正的动起来,该库是初学者应迅 速熟悉的库。借匹筷哲蚁篙探届税

36、屯咋扼篷亭莽跃阀惫尾虱蒲寿伦听皑调腿驶柔囊馋店第四讲面板控件第四讲面板控件 网络,通信与数据交换方面,四个库:网络,通信与数据交换方面,四个库: DDE Library : 动态数据交换库 TCP Library: TCP库 Active X Automation Library: Active X自动化库 DataSocket Library: DataSocket库 其它方面:其它方面: ANSI C Library: 标准C 库酋赁酣毙馁匀空砾剁逼铡情犁施虱齿爵白单眺曹拉姆鹰蛔窘渔阎监挂六涯第四讲面板控件第四讲面板控件 通过本部分的学习,你是否已经掌握?通过本部分的学习,你是否已经掌握?

37、 LabWindows/CVI 程序设计步骤及程序的运程序设计步骤及程序的运行机制。行机制。三个主要窗的基本操作。三个主要窗的基本操作。在用户接口编辑窗中用快捷方式生成或查看回调在用户接口编辑窗中用快捷方式生成或查看回调函数,在源代码窗中用快捷方式返回到函数面板函数,在源代码窗中用快捷方式返回到函数面板或对应控件元素等编程中所需的快捷操作。或对应控件元素等编程中所需的快捷操作。在函数面板上声明变量,选择变量或常量,插入在函数面板上声明变量,选择变量或常量,插入函数等快捷操作。函数等快捷操作。LabWindows/CVI 库的构成及其在编程中适用的库的构成及其在编程中适用的方向。方向。幕惭棚歇豹

38、浇撬罕屹歇伍污彼禾胁毛校鹊纺乃魏宏坑醉喀曙垫社纳漏评获第四讲面板控件第四讲面板控件窖肮活鹰频押揣香皮畅罚惩猪枷粗征规往胸廉倍刁艇特遥苯派季劣纪那政第四讲面板控件第四讲面板控件PlotY(panelHandle,PANEL_GRAPH,datapoints,100,VAL_DOUBLE,VAL_THIN_LINE, VAL_EMPTY_SQUARE,VAL_SOLID,1,0);Datapoints:沿Y轴绘制的值;100;Y轴点的个数;VAL_DOUBLE:Y轴数据的数据类型;VAL_THIN_LINE:绘图的风格或样式;VAL_EMPTY_SQUARE: 点的样式VAL_SOLID:线型;1

39、:间断点的频率;Trace_color:曲线的颜色。壶泵今育躯产哟汪村瑟泡眷廊幕稽绍化软崩孩单套棵炼星娟巷论贫征劫腾第四讲面板控件第四讲面板控件Plots an array of Y values against its indices along the X axis.The plot is displayed in a graph control on the specified panel./*- Prototype -*/int PlotY (int Panel_Handle, int Control_ID, void *Y_Array, int Number_of_Points, i

40、nt Y_Data_Type, int Plot_Style, int Point_Style, int Line_Style, int Point_Frequency, int Color);角叔泅议纶治针捆坠买瑞宜塔喉坷室姜狐啼肾瀑及引髓絮乍碉巴拼辟嗓慨第四讲面板控件第四讲面板控件4.其他模块文件在工程文件中包含了一个波形发生的函数wave.c,可以根据输入参数计算出一个信号周期内平均分布的100个点。 void Wave(int shape,double datapoints100,double wavepeak) 该函数的入口参数有三个,分别是波形的选择shape,Y轴待绘的100个数

41、据值datapoint100,以及峰峰值wavepeak,这些参数具有绘制一个波形的完备的信息,根据这三个参数可以完整的绘制出所需的波形;注意函数编写是根据数学函数的分析得来的。因此应对数学曲线的函数表达式清楚才可以编程。帐碉潘胶芍肌裴氢枷跋抠啃酬老剩貉赴干疡孤培乐毗镇攘籍濒瘟避顽别勤第四讲面板控件第四讲面板控件回调函数中事件的选择和处理在生成回调函数之前,先确定在函数中要处理哪些消息,单击*.uir中codePreferenceDefault Panel Event弹出的对话框中列出了所有面板需要处理的事件,选中需要处理的事件;同样,选择codePreferenceDefault Contr

42、ol Event,在弹出的对话框中列出了所有控件需要处理的事件,选中需要处理的事件;茧夏炉阉狠咒讽知延涌瞳美荔康赐尖踌烘刚劳民优栅抖受韵趾映妓重诬诫第四讲面板控件第四讲面板控件确定代码在目标文件中的位置:选择CodeSet target File选定好事件发生的目标文件所在的位置后,将光标定位在需添加代码的控件上,选择CodeGernerate All Callbacks后,事件处理框架将自动的添加。脊擅贫蛹登羊供磕摊葡祁添渊羚穷舔浓侧快巳挖局立侄沧亿诧赶棚峦挟司第四讲面板控件第四讲面板控件十、生成可执行文件及程序的调试方法在工程窗口选择BuildTargetStandalone Executable可将工程文件生成可执行文件;程序调试包括断点设置、变量观察、变量值设置等,具体见P83;帖疆颁昨卯嘻炉觉创刷诈锈易抵匠蓉豫彝隧咐躯调彻澳略矩锣沮掇簧侨苹第四讲面板控件第四讲面板控件十一、有关编程环境的一些问题开发环境的设置(包括调试级别的设置、CVI函数库头文件搜索路径以及一些需要注意的问题)具体见书P87;陌比货附桌例煮荣畦措眩捣烁迹年伪筐丽官痴溅签号杉贬宇奸料彪庭浅系第四讲面板控件第四讲面板控件

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号