【发布时间】:2018-09-07 23:12:38
【问题描述】:
我的工具提示样式是这样的(不是那种颜色)
QToolTip {
border: 1px solid blue;
border-radius: 10px;
background-color: red;
}
但是背景没有剪掉边角:
为什么没有剪裁?
【问题讨论】:
标签: qt qtstylesheets qtooltip
我的工具提示样式是这样的(不是那种颜色)
QToolTip {
border: 1px solid blue;
border-radius: 10px;
background-color: red;
}
但是背景没有剪掉边角:
为什么没有剪裁?
【问题讨论】:
标签: qt qtstylesheets qtooltip
在提出您的问题两年后,在同一个问题上苦苦挣扎,通过实验和艰苦的谷歌搜索,我得出了以下结论:
setAttribute(Qt::WA_TranslucentBackground); + setMask() 工作正常,以及实现小部件透明度的其他更简单的方法最后,如果你真的喜欢它,递归遍历小部件的子级并安装事件过滤器可能是一个足够的解决方案,例如:
if (event->type() == QEvent::ToolTip) {
QHelpEvent *helpEvent = static_cast<QHelpEvent *>(event);
// Your code here
return true;
}
如果您不希望到处都有这些工具提示,那就更容易了。有时您已经不得不做一些类似的事情来将复杂的 CSS 样式从文件应用到动态创建的小部件,但无论如何这不是“无代码解决方案”。唉,到目前为止找不到更好的方法。
【讨论】: