大家好,我最近在做一个项目,项目中使用wxWidgets类库进行GUI开发,由于所有的控件都是继承自wxWindow的,在使用中由于要处理控件重叠的问题,所以在遇到不规则绘图时,需要把wxWindow里的背景色给透掉。这里我已经尝试过了一种方法,就是在窗口和窗口上的控件里都定义擦除背景方法,然后在这个方法里什么也不做。发现在父窗口设置了背景的时候是行不通的,子窗口还是有背景出现。
我想这个问题应该是比较普遍的问题,想问下大家有没有可行的方法,指点一下,谢谢啦!
wxWidgets怎么实现wxWindow背景的透明化处理
-
- Experienced Solver
- Posts: 80
- Joined: Wed May 26, 2010 8:42 am
- Location: Beijing, China
- Contact:
Re: wxWidgets怎么实现wxWindow背景的透明化处理
samples/shaped这个例子不行么?
OS: Win7 Ultimate SP1 x64(Windows XP Pro SP3 in VirtualBox)
Compiler: MinGW32 (gcc4.8.1 + gdb7.6.1)
IDE: Code::Blocks 12.11
Lib: wxWidgets3.0.0
Compiler: MinGW32 (gcc4.8.1 + gdb7.6.1)
IDE: Code::Blocks 12.11
Lib: wxWidgets3.0.0
Re: wxWidgets怎么实现wxWindow背景的透明化处理
不行呢,那个应该是在dc上画的,我的是元件调用的就是wxWindow的方法,我使用的那些元件都是继承自wxWindow这个类的。fancyivan wrote:samples/shaped这个例子不行么?