社区
Qt
帖子详情
QT 怎样在控件上画图
lhb807949392
2012-03-03 01:31:45
我想在一个Widget中的tabwidget中画图,该怎么办
QPainter painter(this);这里面的this应该怎么改?
又或者如果不能在控件上画的话,怎样使画出来的图形处于其他控件的上层而不至于被覆盖掉
...全文
1619
12
打赏
收藏
QT 怎样在控件上画图
我想在一个Widget中的tabwidget中画图,该怎么办 QPainter painter(this);这里面的this应该怎么改? 又或者如果不能在控件上画的话,怎样使画出来的图形处于其他控件的上层而不至于被覆盖掉
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yediguhong
2013-06-02
打赏
举报
回复
楼主是怎么解决的啊 求教
fightingalways
2013-05-21
打赏
举报
回复
如果在tab上画的是动态图,需要不断刷新的话,怎么整?
禾火山
2013-02-18
打赏
举报
回复
你是怎么解决的啊?我现在也在做一个和你说的类似的东西。在寻求方法!求解!
JaydenZhou
2012-04-23
打赏
举报
回复
[Quote=引用 6 楼 的回复:]
我的资源里有个例子,不用继承QTabWidget就能画图。
[/Quote]
感谢提供源代码~ 很有受教~
ysj427
2012-03-03
打赏
举报
回复
tabWidget->addTab(new paint(Qt::green), "TabGreen");就是加入标签页的方法:第一个参数是要加入的widget,第二个参数是它在tabWidget上的名称。
lhb807949392
2012-03-03
打赏
举报
回复
解决了 谢谢各位
jdwx
2012-03-03
打赏
举报
回复
我的资源里有个例子,不用继承QTabWidget就能画图。
jdwx
2012-03-03
打赏
举报
回复
怎样使画出来的图形处于其他控件的上层而不至于被覆盖掉?
这个是不可能做到的。
lhb807949392
2012-03-03
打赏
举报
回复
@ysj427
我是在ubuntu下同Qt creator,只建了一个基于Widget的项目,具体应该在哪里改啊?
初学Qt,看不出来代码中哪里表示你所说的“把它加在tabWidget”
解决了100分都给你啊
ysj427
2012-03-03
打赏
举报
回复
前两个问题:先把图绘在一个Widget里,然后把它加在tabWidget里就行。
后一个问题我也坐等答案。
参考代码(WIN7、VS2008运行通过):
#include <QApplication>
#include <QWidget>
#include <QPainter>
#include <QTabWidget>
class paint : public QWidget
{
public:
paint(QColor c);
protected:
void paintEvent(QPaintEvent *event);
private:
QColor color;
};
paint::paint(QColor c)
{
color = c;
}
void paint::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing);
painter.setPen(QPen(Qt::black, 12, Qt::DashDotLine, Qt::RoundCap));
painter.setBrush(QBrush(color, Qt::SolidPattern));
painter.drawEllipse(50, 40, 400, 300);
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTabWidget *tabWidget = new QTabWidget;
tabWidget->addTab(new paint(Qt::green), "TabGreen");
tabWidget->addTab(new paint(Qt::red), "TabRed");
tabWidget->addTab(new paint(Qt::blue), "TabBlue");
tabWidget->resize(500, 400);
tabWidget->show();
return a.exec();
}
lhb807949392
2012-03-03
打赏
举报
回复
在哪里重写tabWidget的paintEvent函数,它又不是个类
wk5882846
2012-03-03
打赏
举报
回复
可以重写tabWidget的paintEvent函数,在里面用painter.
你也可以看下tabwidget有没有addpixmap这样的函数,可以把图片显示出来
Qt
使用QPainter类在子
控件
上
画图
因为事件过滤器的影响 无法直接使用QPainter类在子
控件
上实现
画图
操作,需使用eventFilter函数进行修改
Qt
在子部件上
画图
(QFrame)实现
用过滤器的方式,实现在Frame和Widget子部件上
画图
,很有启发性!
qt
_draw
画图
工具
qt
的
画图
工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可自定义添加
控件
,支持保存到文件并可还原,支持撤销、排版,放大、缩小,操作过程日志化
qt
的
画图
工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可自定义添加
控件
,支持保存到文件并可还原,支持撤销、排版,放大、缩小,操作过程日志化
qt
的
画图
工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可自定义添加
控件
,支持保存到文件并可还原,支持撤销、排版,放大、缩小,操作过程日志化
qt
的
画图
工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可自定义添加
控件
,支持保存到文件并可还原,支持撤销、排版,放大、缩小,操作过程日志化
qt
的
画图
工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可自定义添加
控件
,支持保存到文件并可还原,支持撤销、排版,放大、缩小,操作过程日志化 界面优美 随意缩放拖动
画图
工具 画弧线折线 直线矩形 界面优美 随意缩放拖动
画图
工具 画弧线折线 直线矩形 2018-------------------》
qt
自绘仪表盘
控件
项目demo完整源码
基于
QT
的仪表盘有很多种办法,比如使用QWT,ChartDirector 或H5混合的echart组件, 或者基于
QT
的绘图功能绘制,或者基于美工提供的图片的基础上增加动态效果。 然而搞明白
QT
自定义
控件
的绘图后,自定义绘图这种,实现是最简单最轻量级的,且定制度高,想要什么效果就可以自己绘制个。 所谓一通百通,有了以下示例的参考实现,任意实现一个类似的仪表盘,也是很简单的事情。 以上示例,提供了四个经典常用的仪表盘绘制源码。简单小巧,一通百通,可根据需要实现自己的仪表盘
控件
。 详细介绍,参见个人博客:《
Qt
自定义
控件
画图
实现漂亮的仪表盘》 https://blog.csdn.net/yyz_1987/article/details/144088683
windows用
QT
实现
画图
工具
在windows平台下用
QT
实现的
画图
工具 可移植
Qt
21,433
社区成员
26,687
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章