我有一个wxWidgets程序。对于其中的一部分,如果系统支持alpha混合,我想使用alpha通道“淡化”一组图标,如果不支持,则使用灰度级,但我似乎无法找到任何方式来判断系统是否支持alpha混合。
我有什么遗漏,或者没有wxWidgets和/或跨平台的方式来做这件事吗?
(我很熟悉wxWidgets,但我以前从未做过alpha混合。)
答案 0 :(得分:0)
据我所知,您在顶级窗口调用CanSetTransparent
,如果它返回true
,请使用值< SetTransparent
调用true
255.如果 返回CanSetTransparent
,则系统支持Alpha透明度。您必须在之后执行此操作显示您正在使用的顶级窗口。
(true
只检查Windows下的操作系统版本,总是在Mac OS下返回SetTransparent
,并检查编译时GTK版本和wxGTK上的函数。{{1}}有所不同Windows和GTK上的路径取决于值是255还是更小。)