QPoint代表一个点的坐标,常用方法如下:
QPoint(); // 构造横纵坐标均为 0 的 QPoint 对象 QPoint(int x, int y); // 构造横纵坐标分别为 x 和 y 的 QPont 对象
通过以下成员函数可以得到QPoint中横纵坐标的引用:
int &rx(); //横坐标引用 int &ry(); //纵坐标引用
设置横纵坐标:
void setX(int x); //设置横坐标 void setY(int y); //设置纵坐标
获取横纵坐标
int x() const; //获取横坐标 int y() const; //获取纵坐标
QPen:画笔,可以进行线条的绘画
color():定义了线条的颜色。使用setColor(QColor(255, 0, 0, 100))定义画笔的颜色
width():定义了线条的宽度。使用setWidth(int width)设置线条的宽度
QPen:: setPixelSize(16) //设置线条像素大小为16px
这里有个特殊情况,要说明一下,按照我们的理解,如果setWidth(0)的话,应该是线条宽度为0,应该是不显示线条啊。可是实际不是这样,当设置为线条宽度为0的时候,默认画笔的宽度一直是1像素宽。
如果不想显示线条有两种办法:
//办法1 setStyle(Qt::NoPen); //办法2 setWidth(-1);
style(),定义了线条的类型,setStyle还可以设置三种线条类型:
实线:Qt::solidLine
虚线Qt::dotLine, Qt::dashLine
QPainter: 画板,可以进行多边形的绘画
常用多边形绘画如下:
QPainter一些用法:
函数QPainter::isActive()的作用是:指示绘制程序是否处于活动状态。painter由begin()函数和接受QPaintDevice参数的构造函数激活,end()函数和析构函数将停用它。
drawText(x, y, str) 在(x, y)位置绘制文字
QFont:设置字体属性
Qt焦点事件 setFocusPolicy:
设置焦点可以让应用更便捷。比如当你打开百度主页或其他带有编辑框的页面时,不需要先用鼠标点击编辑框就可以直接输入文字等信息到其中。这就是由于搜索框设置了焦点。
一个空间要先设置它焦点事件的模式,即窗口如何接受焦点事件(通过鼠标单击、Tab键、不接受焦点事件等)
setFocusPolicy(Qt::StrongFocus); //通过tab键或单击获得焦点