CVI父子面板

父面板装载方式:

if ((FatherPanel = LoadPanel (0, "FP.uir", PANEL_1)) < 0)    return -1;

子面板装载方式:

if ((SonPanel = LoadPanel (FatherPanel, "SP.uir", PANEL_2)) < 0)   return -1;

CVI中父面板与子面板的区别:

父面板右上角有最大化最小化关闭等按钮,子面板没有;而且子面板只能在父面板的范围内移动。


CVI工程中若有很多面板
1、在main函数中利用LoadPanel加载所有面板,在后面遇到用到的地方直接使用相应的面板句柄在面板操作函数中调用即可。这种方式对内存的占用很大。
2.在面板上控件的回调函数中装载需要的面板同时display。缺点:如果在几个面板控件都要调用,那么该面板会被装载多次。
解决方法
1).增加一个判断面板是否加载了的变量
原来加载方式
if ((panelHandle = LoadPanel (0, "TEST.uir", PANEL)) < 0)
 return -1;
DisplayPanel (panelHandle);
更改后的加载方式
if((panelLoad==0)&&(panelHandle==0))
{
if ((panelHandle = LoadPanel (0, "TEST.uir", PANEL_1)) < 0)
return -1;
panelLoad=1;
}
DisplayPanel (panelHandle);

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值