从国庆节之后学习QT,到现在基本上入门了,完成了串口调试工具后,简单的了解了GoogleMap,然后为了感受QT制作界面的方便性,找了360界面来练手(主要是因为360sd的文件夹里有皮肤图片文件,这里我选择了“大展宏兔”版本)。学习过程终于到了不少问题,不知道是学艺不精还是qt本身做得也有限。
先上最终图片效果:
遗留问题和大家探讨:
1、无框之后,虽然现在可以感应鼠标,进行双击的缩小和放大,但是几乎每个区域都可以缩小放大和拖动,估计是要做事件过滤处理,以后有空再研究和修改,现在是在做得恶心了;
2、按钮的背景现在无法切换,hover和pressed的时候应该是要换图片的,我使用的是qss,但是qss的url并不支持选择图片的某一个区域(研究了好久的文档才知道),不想去浪费时间切图了,就没做了。
3、qss中的类型和对象选择很耽误功夫,主要还是我本身没有css的功底,却是费了不少功夫啊。
4、布局器QHBoxLayout和QVBoxlayout中的QWidget和QFrame等集成于QWidget的控件尺寸的调整:这个问题我现在也不是怎么明白,至于Margin、border、padding、content的box model倒是明白了,但是布局器里面的QWidget设置大小用resize不行。只要选择了一个setFixedSize,setMinimumHeight,但是整个窗体被拉伸了,杯具啊,不想调了,希望牛人指点。
5、到最后,功能按钮下方的ScanPage中的LeftWidget和rightWidget之间有个缝隙老去不掉,不知道为啥,我已经添加了addSpacing(0)?
最后贴上源码,交流学习。(另:知道了360、qq等都是用directUI实现,抽空弄个盗版的了解啊)。不知道怎么添加代码文件,去资源下载,资源下载地址:http://download.csdn.net/detail/hitxiaya/3734803