分享讨论界面问题!
来源:互联网 发布:淘宝企业店铺公司注销 编辑:程序博客网 时间:2024/05/16 07:23
个人感觉VB处理界面的几个难点:
1,界面的表达能力,个人理解:越简单越好;
2,界面的外观,俗话说:人靠衣衫。在处理界面的时候合理运用“炫”的手法还是必要的;
--------------------------------------------------
非常感谢dylike,这里就拿出自己做的一些小东西与大家分享,就当抛砖引玉了;
1,搭建一个QQPLAY外观的主窗口;
2,为控件添加(或者手工制作)SCROLLBAR;
3,配合主窗口自定义一些相关控件:重要的有scrollbar,datagridview,treeview,tabcontrol(以上2个图片有显示),richtextbox,textbox等一些常用的控件;
________________________________
PS:
不需要太追求特别的语言,结果还是相对重要些!
————————————————————————
1,搭建一个QQPLAY外观:
目标:实现窗口最小,最大,可移动(窗口大部分区域可实现移动),可改大小;
方法:
a,移动,当然用Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)(略)
b,比较麻烦的是改变大小(鼠标放置窗口四边),这里首先设置me.padding值,控件布置时会预留主窗口相应值,剩下的同样用Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)(略)处理上下左右大小调整;
c,可移动,保证此区域为窗口或此区域的控件的enable=false即可;
相关代码:
【移动,调大小】
————————————————————
PS:谢谢指正;
2,手工绘制scrollbar
大家可以参照一下:http://www.cnblogs.com/yellowyu/archive/2009/02/15/1390926.html
这里提到了2个实现方法:1,纯手工制作;2,为系统scrollbar打补贴,把自己的bar覆盖上去。本人均已完成这2种scrollbar的制作方法;但是值得注意的是:参照网页上提到的对应公式在实际应用起来并不是“精确”;
aaaa>>>还是先讨论下补贴的方法:
1,首先判断控件的scrollbar是否可见(GetWindowLong(MeControl.Handle, GWL_STYLE) And WS_VSCROLL) = WS_VSCROLL);
2,获取系统scrollbar的参数,依次设置自己的参数,然后把自己的scrollbar添加到目标控件的父控件上(窗口);
3,通知系统scrollbar向上、向下移动一次:PostMessageA(MeControl.Handle, WM_VSCROLL, 0, 1);
4,手柄移动(thumb),这里就提到上面(红字)所说不精确的问题了,因为当所显示的数据过大,系统scrollbar默认thumb.height是一个固定值,并不是与数据量呈线性关系,而我们的scrollbar最好的选择也是必要设置一个最小的thumb.height,那么就需要对官方提供的比例公式进行微调了;这里引入一个参数K1,即当设置成固定thumb.height时,鼠标移动1,scrollbar值对应K1;
5,补贴scrollbar时,注意不同控件显示的方法,比如:listbox,datagridview等系统scrollbar单位值对应显示的数据item的index;而richtextbox,treeview等则是系统scrollbar单位值对应显示的像素;
bbbb>>>>有了以上的共识,就可以手工绘制scrollbar了:
1,关键的K1,可以随心所欲设置各种scrollbar外观;
2,为了方便可以虚拟一个VSCROLLBAR;其他方法可参照补贴的方法;
————————————————————
PS:相关scrollbar的代码比较乱,杂,这里就不好意思贴代码了!
- 分享讨论界面问题!
- 关于安卓HttpURLConnection的一个问题分享讨论
- 分享界面
- 问题讨论
- android shardsdk 一键分享点击无界面问题
- 关于Unity中 截图跳转分享界面的问题
- 【分享】两会微博讨论
- 分享,讨论Programming的习惯
- 关于录入界面的讨论
- 友盟分享:问题总结 1 调起微信/微博界面时一闪而过,无法弹出确认分享界面
- ShareSDK自定义界面的分享及分享中注意问题整理
- 界面库分享
- 分享界面用tablelayout
- 分享弹出界面
- 近期讨论问题
- P2P问题彻底讨论
- uml问题讨论群!!
- 欢迎讨论问题
- linux下mysql(rpm)安装使用手册
- 可视化的数据结构和算法
- 把Google的JS压缩神器和YUI.Compressor的CSS压缩神器鼠标右键化
- access 调用 存储过程
- SWT / JFace 对话框 (转)
- 分享讨论界面问题!
- 关于类的this指针总结
- 自己动手,使用PHP的SOCKET来伪造POST数据
- 第二届 “国信蓝点”软件设计大赛 C语言模拟题(附程序题 解题程序)
- JNI 概述 (未完待续)
- I2C总线
- 唐骏的成功是整个中国的失败
- 程序学习第八天
- 数据库挂马