Вернуться   Компьютерный форум > Компьютеры > Программы > Программирование
 
 
Опции темы
Старый 25.10.2011, 20:18   #1 (ссылка)
Новичок
 
Аватар для SchwarzeWolfin
 
Регистрация: 17.03.2011
Сообщений: 10
Репутация: 0
Профиль ВКонтакте Профиль в Мой мир
Question помогите найти ошибку (Qt)

сама программа до безобразия проста и бессмысленна,но суть не в этом. и т.к. в Qt раньше работать не приходилось возникло некоторое недопонимание. объясните чайнику как правильно работать с наследованием,чтобы в дальнейшем избегать подобных ошибок (в данном случае проблема со строкой return app.exec())

Код:
#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();
}
SchwarzeWolfin вне форума  
Ads
 


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите определить ошибку. Vanka2 Драйвера 14 10.10.2011 06:42
SysFader:Explorer.exe помогите устранить надоедливую ошибку!!! 4eLko Безопасность 4 15.09.2011 20:37
Помогите исправить ошибку обновления Код 8Е5Е03FА Weselie Windows 7 3 10.08.2011 14:19
немогу найти оригинальные драйвера для видеокарты! помогите найти! shmega549 Драйвера 7 02.06.2011 15:19
Помогите. компьютер выдает ошибку 1messenger1 Windows 7 0 03.04.2011 17:11
ПОМОГИТЕ УСТРАНИТЬ ОШИБКУ,КОТ.ВЫСКАКИВАЕТ ПРИ ПЕРЕПИСКЕ В ICQ.В ЧЕМ ПРИЧИНА И ЧТО ДЕЛ ANGELIKA Программы 1 20.02.2011 21:36
Помогите вхожу в управление компютером выдаёт ошибку Dany Windows XP 12 15.02.2010 21:08
Помогите устранить ошибку Tr1p Безопасность 4 08.06.2009 10:07
Помогите исправить ошибку bek76 Безопасность 2 20.05.2009 09:43
народ помогите пожалуйста!!!!!! выдает ошибку((((((( timur1509 Windows XP 5 12.01.2009 01:14


Текущее время: 03:22. Часовой пояс GMT +4. Powered by vBulletin® Version 5.8.9
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.