求助!qt窗体怎样实现局部透明?

ygl840455828ygl 2017-08-30 05:36:12
就想让窗口中的某区域透明,有没有搞过的兄弟,
...全文
1200 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
TJbell 2018-10-18
  • 打赏
  • 举报
回复
FillRect填充矩形部分,FillPath填充不规则部分。都可以实现部分透明的效果。
彩阳 2018-10-15
  • 打赏
  • 举报
回复
局部透明的方法,其实也不难。用QML的话,非常简单。

gushansanren 2018-09-20
  • 打赏
  • 举报
回复
整个窗口都搞成透明的,不透明的地方拖一个不透明的widget。
yjh18720061895 2018-09-14
  • 打赏
  • 举报
回复
重写paintEvent函数就可以了
代码如下:

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();

Ui::MainWindow *ui;
private:
void paintEvent( QPaintEvent* );

};

void MainWindow::paintEvent( QPaintEvent* )//MainWindow是你的窗口类
{
QPainter p(this);
p.setCompositionMode( QPainter::CompositionMode_Clear );
p.fillRect( 10, 10, 300, 300, Qt::SolidPattern );//第一,二个参数是你要透明显示区域的坐标x,y,第三,四个参数是宽和高
}
你重写这个函数就可以出来效果了,不需要做其他的事
kk999900 2017-08-31
  • 打赏
  • 举报
回复
给你一个参考地址,虽然不知道网页文字是什么语言, 你可以直接下载源代码下来自己看 https://qt.developpez.com/tutoriels/braindeadbzh/customwindow/
  • 打赏
  • 举报
回复
搞一张跟窗口一样大的背景图,背景图在需要透明的地方透明,作为这个窗口的背景图,这样就达到窗口某部分区域透明的效果了。
gucunlin 2017-08-31
  • 打赏
  • 举报
回复
GIF透明效果可以吗? GIF可以局部透明的,或者PNG
ygl840455828ygl 2017-08-30
  • 打赏
  • 举报
回复
自顶。。。。。

16,173

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧