如何在 qt5 上绘制 QDialog 的 caret/arrow 底部

How to draw a caret/arrow bottom of a QDialog on qt5

我想在 qt window 的顶部或底部绘制插入符号/箭头。我找不到与此相关的任何文档。

如何使用 qt5 完成此任务?我已经搜索了所有可能的词,但找不到任何内容。

这可以应用于需要的QDialog 或qml 吗?我的第一选择是 QDialog,因为我在 QDialog 中已经有一个网络引擎和其他 qwidgets。

我正在使用 C++。

我的意思是:

大多数 window-managers 不直接支持非矩形 windows,这意味着如果你想做这样的事情,你需要通过制作 window 足够大以在 window 区域内包含其正常内容和所需的插入符形状,并使 window 在顶部透明。

为此,请在您的对话框中调用 setAttribute(Qt::WA_TranslucentBackground)setAttribute(Qt::WA_FramelessWindowHint),并重写 paintEvent(QPaintEvent *) 以仅为您希望非对话框的部分绘制对话框背景透明.