Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在Qt中的小部件下绘制阴影?_C++_Qt_User Interface_Widget_Shadow - Fatal编程技术网

C++ 如何在Qt中的小部件下绘制阴影?

C++ 如何在Qt中的小部件下绘制阴影?,c++,qt,user-interface,widget,shadow,C++,Qt,User Interface,Widget,Shadow,我想知道如何在Qt中的小部件(比如说,标签)下画一个阴影。我需要使用样式表还是编写样式表(用C++编写)?QLabel继承自。你可以用它来创建阴影。假设你有一个窗体和一个标签,你想从中投射阴影 您可以这样使用: 其效果是: 这种效果的缺点是,如果将其应用于小部件,则其所有子部件都将继承它。如果将效果应用于包含大量小部件的小部件,则可能会出现问题,因为这会减慢渲染时间。但对于你的例子来说,这是非常好的建议 有关Qt中效果的更多信息,请检查QGraphicsDropShadowEffect也是从中

我想知道如何在Qt中的小部件(比如说,标签)下画一个阴影。我需要使用样式表还是编写样式表(用C++编写)?

QLabel继承自。你可以用它来创建阴影。

假设你有一个窗体和一个标签,你想从中投射阴影

您可以这样使用:

其效果是:

这种效果的缺点是,如果将其应用于小部件,则其所有子部件都将继承它。如果将效果应用于包含大量小部件的小部件,则可能会出现问题,因为这会减慢渲染时间。但对于你的例子来说,这是非常好的建议

有关
Qt
中效果的更多信息,请检查
QGraphicsDropShadowEffect
也是从中派生的类

QGraphicsDropShadowEffect *effect = new QGraphicsDropShadowEffect;
effect->setBlurRadius(5);
effect->setXOffset(5);
effect->setYOffset(5);
effect->setColor(Qt::black);

label->setGraphicsEffect(effect);