Помогите Найти Ошибку (qt)

Тема в разделе "C/C++/C#", создана пользователем SchwarzeWolfin, 25 окт 2011.

Статус темы:
Закрыта.
  1. SchwarzeWolfin

    Регистрация:
    28 ноя 2010
    Сообщения:
    9
    Симпатии:
    0
    сама программа до безобразия проста и бессмысленна,но суть не в этом. и т.к. в Qt раньше работать не приходилось возникло некоторое недопонимание. объясните чайнику как правильно работать с наследованием,чтобы в дальнейшем избегать подобных ошибок (в данном случае проблема со строкой return app.exec())

    Код (Text):
    #include <QtGui>

    using namespace std;

    class MyApplication: QApplication{
    public:
    MyApplication(int&,char**);
    ~MyApplication();
    public slots:
    void resultClicked(QCheckBox*box1,QCheckBox*box2,QMessageBox*mbox,QVBoxLayout*layout1){
    if(box1->isChecked())
    if(box2->isChecked())
    mbox->setText("you like apples & oranges");
    else
    mbox->setText("you like apples");
    else
    if(box2->isChecked())
    mbox->setText("you like oranges");
    else
    mbox->setText("you don't like this fruits");
    }

    };

    int main(int argc, char *argv[])
    {
    MyApplication app(argc,argv);
    QWidget *window=new QWidget;
    window->setWindowTitle("What fruits do you like?");
    QLabel *label=new QLabel ("What fruits do you like?");
    QCheckBox *box1=new QCheckBox("apples");
    QCheckBox *box2=new QCheckBox("oranges");
    QPushButton *result=new QPushButton("Result");
    QMessageBox *mbox=new QMessageBox;
    QVBoxLayout *layout1=new QVBoxLayout;
    QVBoxLayout *layout2=new QVBoxLayout;
    QVBoxLayout *layout3=new QVBoxLayout;
    QVBoxLayout *layout4=new QVBoxLayout;
    layout2->addWidget(label);
    layout3->addWidget(box1);
    layout3->addWidget(box2);
    layout4->addWidget(result);
    layout1->addLayout(layout2);
    layout1->addLayout(layout3);
    layout1->addLayout(layout4);
    layout1->addWidget(mbox);
    window->setLayout(layout1);
    QObject::connect(result,SIGNAL(clicked()),qApp,SLOT(resultClicked()));

    window->show();
    return app.exec();
    }
     
Загрузка...
Похожие Темы - Помогите Найти Ошибку
  1. OlgaZag
    Ответов:
    1
    Просмотров:
    1.292
  2. OlgaZag
    Ответов:
    0
    Просмотров:
    523
  3. Google313
    Ответов:
    0
    Просмотров:
    1.000
  4. Marikd
    Ответов:
    2
    Просмотров:
    1.209
  5. ruivit
    Ответов:
    2
    Просмотров:
    1.329
Статус темы:
Закрыта.

Поделиться этой страницей