QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 837|回复: 6

请大家帮我看看这个Qt程序有什么问题

[复制链接]
发表于 2004-12-18 16:18:07 | 显示全部楼层 |阅读模式
最近正在学习Qt,用的书是《KDE 2/Qt编程宝典》,在“从一个文件中载入一个像素映射”一节中,有如下一段程序:
[code:1]
#include <kapp.h>
#include <qwidget.h>
#include <qpixmap.h>

int main(int argc,char **argv)
{
  KApplication app(argc,argv,"showxpm");
  QPixmap pixmap("default.xpm");
  QWidget *widget = new QWidget();
  widget->setFixedSize(pixmap.width(),pixmap.height());
  widget->setBackgroundPixmap(pixmap);
  widget->show();
  app.setMainWidget(widget);
  return app.exec();
}
[/code:1]
按照书上的说法,应该是显示出一个以default.xpm为背景的对话框,我运行的时候确实有对话框,但是没有背景图案,百思不得其解,请大家帮忙看看,问题在哪,谢谢。
发表于 2004-12-18 17:40:56 | 显示全部楼层
你的default.xpm图片在同一个目录下么?
回复

使用道具 举报

发表于 2004-12-18 17:55:46 | 显示全部楼层
程序没有问题, 我试过了。 我把KApplication 改成 QApplication (把第一个inlcude 改为qapplication.h), 都可以正常运行。

你查一下,你程序的同一目录下是否有一张确定是xpm格式的,叫default的图片, 或着,你随便拷一张图片(jpg, png, xpm 等等), 把 QPixmap pixmap("default.xpm"); 这行里图片的名字改成你图片的名字就可以了。

我估计你是没有图片,或者图片的格式不对.
回复

使用道具 举报

发表于 2004-12-18 17:57:16 | 显示全部楼层
再说一下,我运行了你的源程序,完全没有问题。
回复

使用道具 举报

 楼主| 发表于 2004-12-18 20:30:41 | 显示全部楼层
我把default.xpm放在src目录下的,也就是和上面的程序文件放在一个目录下的,因为显示不出来,我又换了一张png的,同样放在src目录下,修改程序为png图,还是不行,要不然我怎么会百思不得其解呢
回复

使用道具 举报

发表于 2004-12-27 12:49:44 | 显示全部楼层
非/src应该在放在程序所在目录
回复

使用道具 举报

发表于 2004-12-29 10:13:35 | 显示全部楼层
图片和程序放在一个目录下,把这句改成这样
QPixmap pixmap("../default.xpm");或者写成绝对路径
QPixmap pixmap("/src/default.xpm");我试了,这样可以。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-6 21:45 , Processed in 0.044421 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表