75 lines
1.9 KiB
C++
75 lines
1.9 KiB
C++
#include "curchatwidget.h"
|
|
|
|
CurChatWidget::CurChatWidget(QWidget * parent ):QWidget(parent)
|
|
{
|
|
|
|
}
|
|
CurChatWidget::~CurChatWidget()
|
|
{
|
|
|
|
}
|
|
|
|
void CurChatWidget::painteXY(QPainter & painter)
|
|
{
|
|
// 获取Widget的尺寸
|
|
int width = this->width();
|
|
int height = this->height();
|
|
|
|
// 绘制X轴
|
|
int marDec = 20;//边距
|
|
painter.drawLine(0+marDec, height-marDec, width-marDec, height-marDec);
|
|
|
|
// 绘制Y轴
|
|
painter.drawLine(0+marDec, height-marDec, 0+marDec, 0+marDec);
|
|
//横向分为五分
|
|
for(int i =0;i< 5;i++)
|
|
{
|
|
//获取图形宽度
|
|
int paWidth = width - marDec*2;
|
|
int paheight = height - marDec*2;
|
|
int perWidth = paWidth/5;
|
|
int xstart = marDec +perWidth* i;
|
|
int ystart = marDec ;
|
|
|
|
int xend = marDec +perWidth* i;
|
|
int yend = paheight+marDec;
|
|
painter.setPen(Qt::lightGray);
|
|
painter.drawLine(xstart, ystart, xend, yend);
|
|
|
|
//每份里面又分为五分,虚线
|
|
for(int j= 1 ;j<5;j++)
|
|
{
|
|
int xstartSmall = xstart +perWidth/5* j;
|
|
int ystartSmall = marDec ;
|
|
|
|
int xendSmall= xstart +perWidth/5* j;
|
|
int yendSmall = paheight + marDec;
|
|
QPen pen;
|
|
// QColor color(0xff,0,0);
|
|
QColor color( Qt::lightGray);
|
|
pen.setColor(color);
|
|
pen.setWidth(2);
|
|
pen.setCapStyle(Qt::RoundCap);
|
|
pen.setJoinStyle(Qt::BevelJoin);
|
|
pen.setStyle(Qt::DotLine);
|
|
|
|
painter.setPen(pen);
|
|
painter.drawLine(xstartSmall, ystartSmall, xendSmall, yendSmall);
|
|
}
|
|
}
|
|
}
|
|
|
|
void CurChatWidget::paintEvent(QPaintEvent *)
|
|
{
|
|
QPainter painter(this);
|
|
painter.setRenderHint(QPainter::Antialiasing, true);
|
|
|
|
// 设置画笔的颜色和样式
|
|
painter.setPen(Qt::black);
|
|
painteXY(painter);
|
|
|
|
|
|
|
|
|
|
}
|