QT中QWidget类参考!(64)
2023-05-03 来源:飞速影视
这个属性保存的是窗口部件中放下事件是否有效。
设置这个属性为真告诉系统这个窗口部件可以能够接收放下事件。
如果窗口部件是桌面(QWidget::isDesktop()),如果其它应用程序正在使用桌面,这也许会失败,你可以调用acceptDrops()来测试这种情况是否发生。
通过setAcceptDrops()可以设置属性值并且通过acceptDrops()来获得属性值。
bool autoMask
这个属性保存的是窗口部件中自动面具特征是否有效。
透明窗口部件使用面具来定义它们的可视区域。QWidget有一些内置的支持可以使重新计算面具的任务更容易。当设置自动面具为真,只要窗口部件改变大小或者改变它的焦点状态updateMask()就将会被调用。注意你必须重新实现updateMask()(其中应该包含一个setMask()的调用)或者什么都不会发生。
注意:当你在你的自定义窗口部件中被重新实现resizeEvent()、focusInEvent()或focusOutEvent()时并且还想确认自动面具计算工作,你应该在你的事件处理函数的后面添加:
if ( autoMask() )
updateMask();
对于所有改变窗口部件的外观,都需要一个重新计算的面具,这都是真的。
虽然面具是一个技术上很吸引人的概念,但是他有一个很大的缺点:当使用复杂的不能被很容易地使用相对简单的区域表达的面具时,它们在一些窗口系统中很慢。经典的实例就是透明的标签。它的内容的复杂形状使它需要用一个位图重新描述它的面具,这将会消耗内存和事件。如果你想让几个临近的窗口部件的背景没有缝隙的融合在一起,你也许想使用的是setBackgroundOrigin(),而不是面具。
也可以参考updateMask()、setMask()、clearMask()和backgroundOrigin。
通过setAutoMask()可以设置属性值并且通过autoMask()来获得属性值。
QBrush backgroundBrush
这个属性保存的是窗口部件的背景画刷。
背景画刷依赖于窗口部件的调色板和它的背景模式。
也可以参考backgroundColor()、backgroundPixmap()、eraseColor()、palette和QApplication::setPalette()。
本站仅为学习交流之用,所有视频和图片均来自互联网收集而来,版权归原创者所有,本网站只提供web页面服务,并不提供资源存储,也不参与录制、上传
若本站收录的节目无意侵犯了贵司版权,请发邮件(我们会在3个工作日内删除侵权内容,谢谢。)
www.fs94.org-飞速影视 粤ICP备74369512号