练习QPainter,运行时看不到图形,只有一个灰色窗口

Chirive 2012-01-10 06:48:27

#include<QApplication>
#include<QPaintDevice>
#include<QPainter>
#include<QPixmap>
#include<QWidget>
#include<QtGui>
#include<QWidget>


int main(int argc,char *argv[])
{
QApplication app(argc,argv);
//QWidget *wid=new QWidget();
//QPixmap *pm=new QPixmap(200,100);
QWidget *pm=new QWidget();
QPainter painter(pm);
painter.setRenderHint(QPainter::Antialiasing);
painter.setPen(QPen(Qt::black,12,Qt::DashDotLine,Qt::RoundCap));
painter.setBrush(Qt::green);
painter.drawEllipse(80,80,400,240);
pm->show();
return app.exec();
}
...全文
1123 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangjunjunJJ 2012-04-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

楼上正解,如果楼主要在其他地方绘制图形,可以考虑绘制到QImage或者QPixmap上面,然后在
painterEvent里面调用QPainter的绘制图像函数。
[/Quote]

如果我既想显示又想保存文件应该怎么办,一个QPainter只能指定往一个地方写啊,要么是窗口,要么是文件
zkicker 2012-01-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lovemyliwu 的回复:]
+1

引用 1 楼 jdwx1 的回复:

QPainter::begin: Paint device returned engine == 0, type: 1
QPainter::setRenderHint: Painter must be active to set rendering hints
QPainter::setPen: Painter not active
QP……
[/Quote]
+1
lovemyliwu 2012-01-13
  • 打赏
  • 举报
回复
+1[Quote=引用 1 楼 jdwx1 的回复:]

QPainter::begin: Paint device returned engine == 0, type: 1
QPainter::setRenderHint: Painter must be active to set rendering hints
QPainter::setPen: Painter not active
QPainter::setBrush: Painter ……
[/Quote]
三条猫 2012-01-11
  • 打赏
  • 举报
回复
楼上正解,如果楼主要在其他地方绘制图形,可以考虑绘制到QImage或者QPixmap上面,然后在
painterEvent里面调用QPainter的绘制图像函数。
jdwx 2012-01-10
  • 打赏
  • 举报
回复
QPainter::begin: Paint device returned engine == 0, type: 1
QPainter::setRenderHint: Painter must be active to set rendering hints
QPainter::setPen: Painter not active
QPainter::setBrush: Painter not active
上面就是你的程序运行是的提示。
想要使用QPainter画图,就要继承QWidget,重写painterEvent虚函数,在里面画图。
Qt不像MFC在什么时间都可以画图,只有在painterEvent里面可以。

16,212

社区成员

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

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