QT_圆_直线_三角t
MyImgTest.h:
#ifndef MYIMGTEST_H
#define MYIMGTEST_H
#include
<QWidget>
class
MyImgTest : public QWidget
{
//Q_OBJECT
public:
MyImgTest(QWidget*
parent = 0);
~MyImgTest();
void paintEvent(QPaintEvent *);
};
#endif
MyImgTest.cpp:
#include
"MyImgTest.h"
#include <QPainter>
//#include
<QRect>
//#include <QPointF>
//#include <QLineF>
MyImgTest::MyImgTest(QWidget*
parent) : QWidget(parent)
{
setFixedSize(360,360);
//固定大小
setWindowTitle("Hello
DevDiv!");
}
MyImgTest::~MyImgTest()
{
}
void
MyImgTest::paintEvent(QPaintEvent *)
{
// 画一条直线
QPainter
painter(this); // 创建QPainter一个对象
QPen
pen;
//pen.setStyle(Qt::DashLine);
pen.setColor(Qt::red);
// 设置画笔为黄色
painter.setPen(pen);
// 设置画笔
painter.drawLine(rect().topLeft(),
rect().bottomRight());
//
画一个空心矩形
pen.setColor(Qt::darkRed);
painter.setPen(pen);
painter.drawRect(1,
1, 100, 100); //painter.drawRect(QRect(1, 1, 100, 100));
//
画一个实心矩形
QBrush
bruch(Qt::FDiagPattern); // 画刷
painter.setBrush(bruch);
// 设置画刷
painter.drawRect(QRect(105,
1, 100, 100));
//
画一个多点线
pen.setColor(Qt::black);
painter.setPen(pen);
bruch.setStyle(Qt::NoBrush);
// 将画刷设置成null//fow
what
painter.setBrush(bruch);
static const QPointF points[4] =
{QPointF(210.0, 1), QPointF(220.0, 50.3), QPointF(300, 100.4),
QPointF(260.4, 120.0)};
painter.drawPolyline(points, 4);
//
画多个点
QPointF
pointf[10];
for (int i=0; i<10;
++i)
{
pointf[i].setX(2.0+i*10.0);
pointf[i].setY(130.0);
}
painter.drawPoints(pointf,
10);
// 画多条线
QLineF
linef[5];
for (int j=0; j<5;
++j)
{
linef[j].setP1(QPointF(110.9+j*10,
120.0));
linef[j].setP2(QPointF(120.8+j*12,
200.0));
}
painter.drawLines(linef, 5);
//
画一个多边形
QPolygonF
polygon;
polygon << QPointF(200.0, 120.0) <<
QPointF(230.0, 130.0) << QPointF(260.0, 180.0) <<
QPointF(200.0,
200.0);
bruch.setStyle(Qt::CrossPattern);
painter.setBrush(bruch);
painter.drawPolygon(polygon,
Qt::WindingFill);
// 画一个圆角矩形
QRectF
rectangle(290.0, 110.0, 50,
50);
bruch.setStyle(Qt::SolidPattern);
painter.setBrush(bruch);
painter.drawRoundedRect(rectangle,
20.0, 15.0);
// 画一个QString
painter.drawText(50,
300, "Hello DevDiv!");
}
main.cpp:
#include
<QApplication>
#include "MyImgTest.h"
int
main(int argc,char *argv[])
{
QApplication
app(argc,argv);
MyImgTest* widget = new
MyImgTest();
widget->show();
return app.exec();
}
操作步骤:
1.qmake-qt4
-project
2.qmake-qt4
QT_圆_直线_三角t的更多相关文章
- 算法基础_递归_求杨辉三角第m行第n个数字
问题描述: 算法基础_递归_求杨辉三角第m行第n个数字(m,n都从0开始) 解题源代码(这里打印出的是杨辉三角某一层的所有数字,没用大数,所以有上限,这里只写基本逻辑,要符合题意的话,把循环去掉就好) ...
- Oracle学习总结_day03_day04_条件查询_排序_函数_子查询
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! day03_条件查询_排序_函数 清空回收站: PUR ...
- C Primer Plus_第6章_循环_编程练习
1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i ...
- 转:HIBERNATE一些_方法_@注解_代码示例---写的非常好
HIBERNATE一些_方法_@注解_代码示例操作数据库7步骤 : 1 创建一个SessionFactory对象 2 创建Session对象 3 开启事务Transaction : hibernate ...
- 迅为4412开发板Linux驱动教程——总线_设备_驱动注册流程详解
本文转自:http://www.topeetboard.com 视频下载地址: 驱动注册:http://pan.baidu.com/s/1i34HcDB 设备注册:http://pan.baidu.c ...
- 3.IP地址分类_规划_子网掩码
IP地址分类_规划_子网掩码 3.1MAC地址 网卡的身份证号———MAC地址 MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20: ...
- 宏定义中的##操作符和... and _ _VA_ARGS_ _
1.Preprocessor Glue: The ## Operator 预处理连接符:##操作符 Like the # operator, the ## operator can be used i ...
- 宏 #,##,_ _VA_ARGS_ _
宏里面使用: 一.# 转为字符串 #define PSQR(x) printf("the square of" #x "is %d.\n",(x)*(x)) ...
- OpenGL立方体在世界坐标系中_缩放_旋转_平移_顶点片源着色器_光照作用_棋盘纹理贴图
读取bmp等图片格式中的像素还有难度,就先用这个棋盘图象素来弄了 代码打错一个就一直First-chance exception ,貌似还有一个要用q或者Q才能成功退出,不知道缺少哪句,我用窗口红叉退 ...
随机推荐
- 【hdu 6444】Neko's loop
[链接] 我是链接,点我呀:) [题意] 给你一个序列. 你可以选择起点i. 然后每次往右跳k次. 得到下一个值a[i+k];. 问你跳m次能得到的最大值ma是多少. 如果>=s输出0 否则输出 ...
- Spring学习总结(16)——Spring AOP实现执行数据库操作前根据业务来动态切换数据源
深刻讨论为什么要读写分离? 为了服务器承载更多的用户?提升了网站的响应速度?分摊数据库服务器的压力?就是为了双机热备又不想浪费备份服务器?上面这些回答,我认为都不是错误的,但也都不是完全正确的.「读写 ...
- ZOJ 3891 K-hash
K-hash Time Limit: 2000ms Memory Limit: 131072KB This problem will be judged on ZJU. Original ID: 38 ...
- C# 低耦合 高内聚
低耦合 loosely Coupling 松散的耦合关系=炮友 couple=夫妻 夫妻=法律约束.家庭.生活.财产.繁衍 炮友:吃喝玩乐,不会产生感情方面的依赖 内聚性 内聚性又称块内联 ...
- 南邮JAVA程序设计实验1 综合图形界面程序设计
南邮JAVA程序设计实验1 综合图形界面程序设计 实验目的: 学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. ...
- VMware虚拟机无法识别U盘解决方式
1. 本机情况: Winxp操作系统(相同应该适用于win7),VMware虚拟机.虚拟机版本号:VMware 10.安装Ubuntu14.04.现要求在主机上插入U盘.在虚拟机中显示. 2. 遇到问 ...
- COGS 2580. [HZOI 2015]偏序 II
COGS 2580. [HZOI 2015]偏序 II 题目传送门 题目大意:给n个元素,每个元素有具有4个属性a,b,c,d,求i<j并且ai<aj,bi<bj,ci<cj, ...
- win10中让Visual Studio默认使用Administrator权限运行
https://stackoverflow.com/questions/9654833/how-to-run-visual-studio-as-administrator-by-default Win ...
- input file上传文件
如何使用input[type='file']来上传文件呢? html: //angular<input type="file" (change)="fileChan ...
- c++面向对象程序设计 谭浩强 第一章答案
c++面向对象程序设计 谭浩强 答案 第一章 目录: c++面向对象程序设计 谭浩强 答案 第一章 c++面向对象程序设计 谭浩强 答案 第二章 c++面向对象程序设计 谭浩强 答案 第三章 c++面 ...