首页| 论坛| 消息

标题:一个图片显示的小程序求教
作者:漏斗の水风
日期:2006-09-10 21:46
内容:

想写一个简单的在qt下显示图片的程序
可是在编译时老出现这个错误:error: multiple types in one declaration 一个声明指定了多个类型
比如在生成image.o的时候 /usr/lib/qt-3.3/include/qpen.h:88: 错误:一个声明指定了多个类型
在编译main.cpp的时候也有这种情况
/usr/lib/qt-3.3/include/qdesktopwidget.h:43: error: multiple types in one declaration
不知道是自己程序哪个地方出毛病了,反正把image.cpp置空就没这个错误了
多谢
程序如下:
imag.h
#ifndef IMAGE_H
#define IMAGE_H
#include
#include
class MyImage : public QWidget
{
public:
MyImage( QWidget *parent=0, const char *name=0, int wFlags=0 );
~MyImage();
bool loadImage( const QString& );
protected:
void paintEvent( QPaintEvent * );

private:
QString filename;
QImage image;
}

#endif
image.cpp
#include "image.h"
#include
#include
#include
MyImage::MyImage( QWidget *parent, const char *name, int wFlags ):QWidget( parent, name, wFlags )
{
bool ok;
filename = "/opt/program/qt/showimg/save";
ok = loadImage( filename );
printf( "ok = %d \n", ok );
}
MyImage::~MyImage()
{
}
bool MyImage::loadImage( const QString& filename )
{

bool ok;
ok = image.load( filename, 0 );
update();
return ok;
}
void MyImage::paintEvent( QPaintEvent *e )
{
QPainter painter(this);
painter.setClipRect(e->rect());
painter.drawImage( image.width(), image.height(), image );
}

main.cpp
#include "image.h"
#include
#include
int main( int argc, char **argv )
{
QApplication a( argc, argv );
MyImage myimage;
a.setMainWidget( &myimage ..


#1 [style 09-11 00:23]
大哥。你是我的偶像.
class X
{
//....
}; 这里的';'可不能掉啊,加上就OK了
#2 [漏斗の水风 09-11 21:04]
多谢楼上。
第一次自己编程,使用QT和C++
错误有点不好意思,呵呵
已解决
再次感谢
#3 [漏斗の水风 09-11 21:06]
顺便说一下是painter.drawImage( 0, 0, image );才能显示图片,否则刚好不显示,我昨天看错了传递的参数定义
还有些小问题,我自己再好好看看

回复 发表
主题 版块