怎么改变CVI 的 Panel 的标题栏的显示风格啊?
本帖最后由 netcreature 于 2009-1-20 08:52 编辑小弟我初学CVI,遇到这样一个问题,在CVI 的界面编辑器里面编辑了一个主界面,比如是这个样子:
但是运行程序后出来的效果是这样的:
nn
哪位大侠有什么高招,让他显示如第一章图的现实的效果。
我想的办法,先将Panel的title bar visible 属性关闭,
然后用text 控件和decoration控件做一个假的标题栏,
但是在CVI中没有了Title 栏,panel居然不能移动,郁闷。
如果要移动面板,你需要在面板或text控件(具体处理哪个可以自己选择!也是会有区别的!!!)的EVENT_MOUSE_POINTER_MOVE事件中进行手工代码编写才能实现。 谢谢老大的回复,除了你说的方法,有没有其他更简单的方法啊? 比如该Panel 的某个属性? panel属性中改了也是没用的(对于XP或VISTA系统我试过,其他不太清楚!),运行是和你在面板属性窗口中的根本不一致!
用手工代码,可靠性高(当然会比较麻烦一点)。 8.5版本的不行,我用过5.5版本的好象可以在属性里设置的! 那我知道了,谢谢各位了。 哦,我记错了,8.5版本的也可以的.在面板属性里将Title bar stytle设置成Classic就可以了!就可以设置标题栏的风格了! 哦,我记错了,8.5版本的也可以的.在面板属性里将Title bar stytle设置成Classic就可以了!就可以设置标题栏的风格了!
hcwz 发表于 2009-1-21 17:15 http://www.cpubbs.com/bbs/images/common/back.gif
呵呵... 你确实记错了!这个属性对于主窗体来说无效。 关于这个问题,还有一个解决方案,就是利用Windows API函数。
1、利用GetWindowText()得到窗体的标题文字;
2、利用GetWindowTextLength()函数得到标题文字长度;
3、利用CVI中GetPanelAttribute()函数得到窗体长度;
4、在窗体问题前插入(3项-2项)/2(进行取整)个空格;
5、用SetPanelAttribute()或SetWindowText()设置显示标题。
将上述过程写成子函数,在窗体的初始化、sizing、size事件中调用即可! 牛人年年有,今年尤其多丫。呵呵,学习了 受用啊,我顶!!!
页:
[1]