在采用libvlc开发播放器时,需要在播放页面添加各种操作控件,如文件加载、播放、暂停、快进、快退等;设置控件透明后,发现未播放视频时,控件确实透明了,无阴影背景现象;但当开始播放视频后,控件就有阴影背景了,严重影响感观。
研究发现,出现上述问题的原因为:当子窗口和子控件继承视频窗口时,会默认使用视频窗口的背景颜色。
未解决前效果:
解决措施:
1、使用Qlabel做为视频播放控件,关联创建的控件与label直接的关系。
QCommandLinkButton* btn = new QCommandLinkButton(ui.label); //本步骤很关键
btn->resize(50,50);
btn->setIcon(QIcon(":/QTvedio/ico/oneframe.png"));
btn->setIconSize(QSize(40, 40));
btn->setStyleSheet("border:none");
QPoint globalPos = ui.label->mapToGlobal(QPoint(0, 0));
btn->move(globalPos.x() + 400, globalPos.y() + 400);
btn-&g