自定义了一个对话框,去掉了系统的标题栏,自绘该部分,然后想要给这个对话框窗口加上阴影效果,因为用的地方比较多,窗口尺寸也不一样,所以不想使用在paintevent里自绘带有阴影的png透明图的方法来实现,就想着使用QGraphicsDropShadowEffect来做,代码如下:
MyDialog baseDialog(this); QGraphicsDropShadowEffect *shadow = new QGraphicsDropShadowEffect(&baseDialog); shadow->setBlurRadius(5.0); shadow->setColor(Qt::red); shadow->setOffset(0,0); baseDialog.setGraphicsEffect(shadow); ret = baseDialog.exec(); ......
问题是这样出来的窗口没有阴影的效果(如果有,应该是红色的,我在windows xp sp3下做的实验),为什么没有阴影出来?是这样做的方法有问题,还是设置的参数不对?(我给QLabel设置同样的代码,QLabel里的文字有阴影效果,但是貌似窗口不行)求高人指教,谢谢!