qt之QWidget阴影边框的代码实现
2017-10-12 15:48
232 查看
任何继承QWidget的都可以实现阴影边框,主要是要重写paintEvent这个方法:
上面所写的是完全用代码写的,还有一种是有阴影图片再结合代码的,我认为用处不大,所以只推荐上面这一种。
virtual void paintEvent(QPaintEvent *); void CommonToolDialog::paintEvent(QPaintEvent *) { QPainterPath path; path.setFillRule(Qt::WindingFill); path.addRect(10, 10, this->width() - 20, this->height() - 20); QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing, true); painter.fillPath(path, QBrush(Qt::white)); QColor color(0, 0, 0, 50); for (int i = 0; i < 10; i++) { QPainterPath path; path.setFillRule(Qt::WindingFill); path.addRect(10 - i, 10 - i, this->width() - (10 - i) * 2, this->height() - (10 - i) * 2); color.setAlpha(150 - qSqrt(i) * 50); painter.setPen(color); painter.drawPath(path); } }
上面所写的是完全用代码写的,还有一种是有阴影图片再结合代码的,我认为用处不大,所以只推荐上面这一种。
相关文章推荐
- 一行代码让无边框窗体实现阴影
- 纯CSS实现的漂亮的立体图片边框效果,阴影代码
- Qt/QML 窗口阴影边框实现
- Qt - QDialog,QWidget实现模态及非模态(模态Widget不能有父窗口,如果设置无边框就不能阻塞父窗口,但是可以强行设置指定Qt::Dialog,还可以setAttribute(Qt::WA_ShowModal),很多讲究)good
- Qt:基于widget方式的窗口阴影边框的实现
- 纯CSS实现的漂亮的立体图片边框效果,阴影代码
- Qt实现透明无边框,无关闭按钮,带自定义图片的窗体实例代码
- Qt/QML窗口阴影边框实现
- Qt开发-简易浏览器+无边框阴影可移动可拖动窗口代码分享
- WPF窗体无边框阴影效果-代码
- Qt之自定义界面(实现无边框、拖动至任务栏之上)
- 纯CSS无图实现DIV边框平滑阴影
- (一一九)通过CALayer实现阴影、圆角、边框和3D变换
- 32位的Ubuntu16.04安装QT5.8,并编译实现window环境下的代码
- Qt利用代码实现流水灯的效果
- HTML表格边框的控制实现代码
- Qt之自定义界面(实现无边框、可移动)
- iphone ios uiview uilabel 边框,圆角,阴影实现
- iphone ios uiview uilabel 边框,圆角,阴影实现
- 纯代码利用CSS3 圆角边框和盒子阴影 制作 iphone 手机效果