• 5294阅读
  • 2回复

请帮我解决一个简单问题吧 [复制链接]

上一主题 下一主题
离线陈媛媛
 
只看楼主 倒序阅读 楼主  发表于: 2006-12-06
我在应用qsplitter出现了问题,不能解决,大家帮个忙阿 ,非常感谢!
#include "mainwindow.h"
#include "qfileiconview.h"
#include "filebrowser.h"

#include <qsplitter.h>
#include <qprogressbar.h>
#include <qlabel.h>
#include <qstatusbar.h>
#include <qtoolbar.h>
#include <qcombobox.h>
#include <qpixmap.h>
#include <qtoolbutton.h>
#include <qdir.h>
#include <qfileinfo.h>

FileMainWindow::FileMainWindow()
  : QMainWindow()
{
  setup();
}

void FileMainWindow::show()
{
  QMainWindow::show();
}

void FileMainWindow::setup()
{//////////////////////////////////////////////////////////////////
出问题处
//////////////////////////////////////////////////
  QSplitter *splitter = new QSplitter( this );

  dirlist = new FileView ( splitter, "dirlist", TRUE );
 
  FileItem *root = new FileItem ( dirlist, "/" );
  root->setOpen( TRUE );
  splitter->setResizeMode( dirlist, QSplitter::KeepSize );

  fileview = new QtFileIconView( "/", splitter );
  fileview->setSelectionMode( QIconView::Extended );

  setCentralWidget( splitter );

  QToolBar *toolbar = new QToolBar( this, "toolbar" );
  setRightJustification( TRUE );

  (void)new QLabel( tr( " Path: " ), toolbar );

  pathCombo = new QComboBox( TRUE, toolbar );
  pathCombo->setAutoCompletion( TRUE );
toolbar->setStretchableWidget( pathCombo );

  connect( pathCombo, SIGNAL( activated( const QString & ) ),
        this, SLOT ( changePath( const QString & ) ) );
//////////////////////////////////////////////////////////////////////////////////
  toolbar->addSeparator();

  。。。 }
报的错误是I/usr/local/arm/qtopia/include -o mainwindow.o mainwindow.cpp
mainwindow.cpp: In method `FileMainWindow::FileMainWindow()':
mainwindow.cpp:59: `QSplitter' undeclared (first use this function)
mainwindow.cpp:59: (Each undeclared identifier is reported only once
mainwindow.cpp:59: for each function it appears in.)
mainwindow.cpp:59: `splitter' undeclared (first use this function)
mainwindow.cpp:59: parse error before `('
mainwindow.cpp:62: no matching function for call to `FileItem::FileItem (FileView *&, const char[2])'
filebrowser.h:11: candidates are: FileItem::FileItem(QListView *, const QFileInfo &)
filebrowser.h:23:           FileItem::FileItem(const FileItem &)
mainwindow.cpp:64: parse error before `::'
make: *** [mainwindow.o] Error 1
[ 此贴被XChinux在2006-12-24 10:04重新编辑 ]
仁者无敌
离线lsosa

只看该作者 1楼 发表于: 2006-12-14
是不是因为没有连接qt的库啊?
you can compile it with command:
gcc -o mainwindow.o mainwindow.cpp -lqt-mt
离线浪漫天使
只看该作者 2楼 发表于: 2006-12-15
FileItem *root = new FileItem ( dirlist, "/" );
看看这个类的构造函数的参数类型是什么?你的参数类型是否一致?

no matching function for call to `FileItem::FileItem (FileView *&, const char[2])
candidates are: FileItem::FileItem(QListView *, const QFileInfo &)
filebrowser.h:23:       FileItem::FileItem(const FileItem &)

还有就是
QSplitter' undeclared (first use this function)
这个错误,不知道你是不是有两个版本的qt?或者是你认为出问题处之前已经出问题,
这里不好判断
快速回复
限100 字节
 
上一个 下一个