#include "hello.h"
#include <qlabel.h>
# include <iostream.h>
QList<Point> pa;
int f1=0;
///////////////////////////////////////////////////////////
HelloForm::HelloForm( QWidget* parent, const char* name,WFlags f1):
HelloBaseForm(parent, name,f1)
{
wlg();//成员函数
}
//////////////////////////////////////////////////////////////////
void HelloForm:: wlg()//成员函数
{
f1=1;//标志位
Point *pp=new Point;//定义结构体
for(int j=100;j<200;j++)//循环赋值,并向存储到双向链表中
{
pp->x=j;
pp->y=j;
pa.append(pp);
repaint(pp->x,pp->y,1,1);//调用画点程序
}
}
void HelloForm::paintEvent(QPaintEvent*)//画点程序
{
if(f1==1)//检测标志位
{
QPainter p;//定义QPainter对象
p.begin(this);//启动画点程序
p.setPen(QPen(Qt::black));//设置笔的颜色
p.drawRect(50,50,160,160);//画矩形
for(int bb=20;bb<100;bb++)//画直线
p.drawPoint(bb,bb);
Point *b;//从双向链表中去数据,画点
for(b=pa.first();b!=0;b=pa.next())
p.drawPoint(b->x,b->y);
p.end();//关闭画点程序
}
}
这个程序,矩形能画出来,直线能画出来,就是双向链表中的数据画不出来.请大家帮忙看一下,谢谢!
[ 此贴被XChinux在2005-09-29 09:54重新编辑 ]