转载请保持文章的完整性并显要地注明出处
本文链接:http://blog.csdn.net/wlsgzl/article/details/38042301
===========================================================================
先上图。无图无真相。
非常明显的,左面和右面的遮挡效果不一样。
可是,我能够负责任的说,他们的属性都是一样的。
=====================================================================================
发现这个问题非常偶然。
一開始我在写一个小样例,界面显示效果是右边的样子。没有多想,然后写了一堆逻辑操作的代码(与界面无关)。
后来打算用别的方法实现下逻辑。又写了一个小样例,结果界面显示效果却是左面的样子。
当我看到界面效果不一样时。当时我就不乐意了,由于我的属性设置都是一样的呀。
于是我又细致对比了一遍两者的属性。发现他们确实是一样的。
后来……你们不会想知道过程的……我一遍又一遍的反复拖放控件、设置属性、查看效果的过程。最终让我发现了,原来是拖放的顺序导致的。
于是,在这里做个结论。由于毕竟有时候,右边的效果是我们想要的。例如说做取景框的时候。
1、实现左边的效果:
先拖放Group Box控件。后拖放Picture控件
2、实现右边的效果:
先拖放Picture控件,后拖放Group Box控件
---------------------------------------------------------------------------------------------------------------
Picture控件对于这两种顺序的属性设置是一样的:
==================================================================================
至于属性同样可是效果不同的原因,我想。我大致推測下:
拖放顺序不同导致了写入*.rc文件中时资源定义的顺序不同。当创建界面时,读取的资源顺序不同,导致了绘制时的覆盖。
当然究竟是什么原因,这恐怕已经超出了我现有的知识范围,可能看PE文件的相关内容也许有所帮助。
只是这已经不重要了。
--------------------------------穿山甲究竟说了什么?------------------------------------