gpt4 book ai didi

qt - 在Qt中,QEvent是什么意思失去窗口焦点,重新获得窗口焦点? (设置透明度)

转载 作者:行者123 更新时间:2023-12-04 12:42:35 26 4
gpt4 key购买 nike

当我的应用程序失去焦点时,我需要设置透明度。
我还需要在重新获得焦点时重置透明度(通过鼠标单击或 alt-tab 或其他方式)

我知道如何设置透明度,所以这不是问题:
设置窗口不透明度(0.75);

问题是什么时候?

最佳答案

我同意 Kévin Renella 的观点,即 QWidget::focusInEvent 有时会出现问题。和 QWidget::focusOutEvent .相反,更好的方法是实现 QWidget::changeEvent() :

void MyQWidget::changeEvent(QEvent *event)
{
QWidget::changeEvent(event);
if (event->type() == QEvent::ActivationChange)
{
if(this->isActiveWindow())
{
// widget is now active
}
else
{
// widget is now inactive
}
}
}

您也可以通过安装 event-filter 来达到同样的目的。 .见 The Event System有关更多信息,请参阅 Qt 文档。

关于qt - 在Qt中,QEvent是什么意思失去窗口焦点,重新获得窗口焦点? (设置透明度),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14377141/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com