• 6861阅读
  • 5回复

求助错误 [复制链接]

上一主题 下一主题
离线zhrlboy
 
只看楼主 倒序阅读 楼主  发表于: 2009-12-14
本人按照<<LINUX窗口程序设计--QT4精彩实例分析>>这书中的一个例子篇译。代码如下:
class Drawer:public QToolBox
{
    Q_OBJECT
    public:
    Drawer(QWidget *parent=0,Qt::WindowFlags f=0);
    ~Drawer();
    
    QToolButton *toolButton1_1;
    QToolButton *toolButton1_2;
    QToolButton *toolButton1_3;
    QToolButton *toolButton1_4;
    QToolButton *toolButton1_5;
    QToolButton *toolButton2_1;
    QToolButton *toolButton2_2;
    QToolButton *toolButton3_1;
    QToolButton *toolButton3_2;
};
Drawer::Drawer(QWidget *parent,QT::WindowFlags f)
:QToolBox(parent,f)
{
    setWindowTitle(tr("My QQ"));
    QGroupBox*groupBox1=new QGroupBox;
    toolButton1_1=new QToolButton;
    toolButton1_1->setText(tr("beibei"));
    toolButton1_1->setIcon(QPixmap(":/images/bb.png"));
    toolButton1_1->setIconSize(QPixmap(:"/images/bb.png").size());
    toolButton1_1->setAutoRaise(TRUE);
    toolButton1_1->setToolButtonStyle(QT::ToolButtonTextUnderIcon);
    toolButton1_2=new QToolButton;
    toolButton1_2->setText(tr("jinjin"));
    toolButton1_2->setIcon(QPixmap(":/images/jj.png"));
    toolButton1_2->setIconSize(QPixmap(:"/images/jj.png").size());
    toolButton1_2->setAutoRaise(TRUE);
    toolButton1_2->setToolButtonStyle(QT::ToolButtonTextUnderIcon);
    toolButton1_3=new QToolButton;
    toolButton1_3->setText(tr("kuankuan"));
    toolButton1_3->setIcon(QPixmap(":/images/kk.png"));
    toolButton1_3->setIconSize(QPixmap(:"/images/kk.png").size());
    toolButton1_3->setAutoRaise(TRUE);
    toolButton1_3->setToolButtonStyle(QT::ToolButtonTextUnderIcon);
    toolButton1_4=new QToolButton;
    toolButton1_4->setText(tr("yinyin"));
    toolButton1_4->setIcon(QPixmap(":/images/yy.png"));
    toolButton1_4->setIconSize(QPixmap(:"/images/yy.png").size());
    toolButton1_4->setAutoRaise(TRUE);
    toolButton1_4->setToolButtonStyle(QT::ToolButtonTextUnderIcon);
    toolButton1_5=new QToolButton;
    toolButton1_5->setText(tr("nini"));
    toolButton1_5->setIcon(QPixmap(":/images/nn.png"));
    toolButton1_5->setIconSize(QPixmap(:"/images/nn.png").size());
    toolButton1_5->setAutoRaise(TRUE);
    toolButton1_5->setToolButtonStyle(QT::ToolButtonTextUnderIcon);
    QVBoxLayout*layout1=new QVBoxLayout(groupBox1);
    layout1->setMargin(10);
    layout1->setAlignment(QT::AlignHCenter);
    layout1->addWidget(toolButton1_1);
    layout1->addWidget(toolButton1_2);
    layout1->addWidget(toolButton1_3);
    layout1->addWidget(toolButton1_4);
    layout1->addWidget(toolButton1_5);
    layout1->addStretch();
    QGroupBox*groupBox2=new QGroupBox;
    QGroupBox*groupBox3=new QGroupBox;
    this->addItem((QWidget*)groupBox1,tr("my friends"));
    this->addItem((QWidget*)groupBox2,tr("stranger"));
    this->addItem((Qwidget*)groupBox3,tr("blacklist"));
}

当篇译时出现不少错误如下:
src/main.cpp:2: 错误: expected class-name before ‘{’ token
src/main.cpp:3: 错误: ISO C++ 不允许声明无类型的‘Q_OBJECT’
src/main.cpp:4: 错误: expected ‘;’ before ‘public’
src/main.cpp:8: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:8: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:9: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:9: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:10: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:10: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:11: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:11: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:12: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:12: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:13: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:13: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:14: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:14: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:15: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:15: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:16: 错误: ISO C++ 不允许声明无类型的‘QToolButton’
src/main.cpp:16: 错误: expected ‘;’ before ‘*’ token
src/main.cpp:18: 错误: ‘Drawer Drawer::Drawer’不是‘class Drawer’的静态成员
src/main.cpp:18: 错误: ‘QWidget’在此作用域中尚未声明
src/main.cpp:18: 错误: ‘parent’在此作用域中尚未声明
src/main.cpp:18: 错误: ‘QT’未声明
src/main.cpp:19: 错误: expected ‘,’ or ‘;’ before ‘:’ token
请问各位这是什么问题?希望得到解答~~~谢谢~~
离线dbzhang800

只看该作者 1楼 发表于: 2009-12-14
建议找本C++的书先看看,然后再看Qt相关的东西
离线wd007

只看该作者 2楼 发表于: 2009-12-15
这段代码是从书中提供的源代码盘上拷贝下来的,还是你自己敲进去的?

类声明后面的那个;号你是否写成了中文的分号?
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线zhrlboy
只看该作者 3楼 发表于: 2009-12-16
里面的代码是我自己从一学习资料中打进去的~~~在QT中发现错误再COPY过来这边的~~
离线dbzhang800

只看该作者 4楼 发表于: 2009-12-16
引用第3楼zhrlboy于2009-12-16 08:58发表的  :
里面的代码是我自己从一学习资料中打进去的~~~在QT中发现错误再COPY过来这边的~~


给我我的感觉是
  你似乎在把上面的代码作为一个完整的例子来看待的。

如果了解C或C++的话,应该了解 头文件 和 main 函数的重要性,但你这儿都没有。
离线zhrlboy
只看该作者 5楼 发表于: 2009-12-19
引用第4楼dbzhang800于2009-12-16 10:45发表的  :
给我我的感觉是
  你似乎在把上面的代码作为一个完整的例子来看待的。
.......



当初看教那本书时在想怎么没有MAIN文件~~但想到作为一本不少人推荐的书本来说应该错误处不会多吧~~~所以作出一个决定试一下能不能汇篇出来~~最后发现书本里例子出了这么多错误!!
快速回复
限100 字节
 
上一个 下一个