seltsames verhalten von meinem qt project



  • ich habe dieses schöne qt buch, in dem steht das...

    007 void SortDialog::setColumnRange(QChar first, QChar last)
    008 {
    009 primaryColumnCombo->clear();
    010 secondaryColumnCombo->clear();
    011 tertiaryColumnCombo->clear();
    012 secondaryColumnCombo->insertItem(tr("None"));
    013 tertiaryColumnCombo->insertItem(tr("None"));
    014 primaryColumnCombo->setMinimumSize(
    015 secondaryColumnCombo->sizeHint());
    016 QChar ch = first;
    017 while (ch <= last) {
    018 primaryColumnCombo->insertItem(ch);
    019 secondaryColumnCombo->insertItem(ch);
    020 tertiaryColumnCombo->insertItem(ch);
    021 ch = ch.unicode() + 1;
    022 }
    023 }
    
    #include <qapplication.h>
    #include "sortdialog.h"
    int main(int argc, char *argv[])
    {
    QApplication app(argc, argv);
    SortDialog *dialog = new SortDialog;
    app.setMainWidget(dialog);
    dialog->setColumnRange(’C’, ’F’);
    dialog->show();
    return app.exec();
    }
    

    und deswegen hab ich das gleich mal selber einbauen wollen...
    und zwar so:

    void haus::setUserEdit()
    {
       useredit->setText(tr("xxxxxx")); //tr() = translation
       keyedit->setText(tr("xxxxxx.xxxx"));
    }
    
    int main( int argc, char ** argv )
    {
       KCmdLineArgs::init(argc, argv, "...", "...", "0.1");
       KApplication app;
       haus window;
       app.setMainWidget(&window);
    
       window->setUserEdit();
    
       window.show();
       app.connect( &app, SIGNAL( lastWindowClosed() ), &app, SLOT( quit() ) );
    
       return app.exec();
    }
    

    mit dem ergebnis:

    main.cpp: In function `int main(int, char**)':
    main.cpp:14: Warnung: »init« ist veraltet (deklariert bei /usr/include/kcmdlineargs.h:260)
    main.cpp:19: Fehler: base operand of `->' has non-pointer type `haus'
    make: *** [.obj/main.o] Fehler 1
    

    weiß einer was ich falsch gemacht habe?



  • window ist ein haus und kein haus *. Folglich ist window.setUserEdit() korrekter.



  • stimmt, dumm von mir 😞


Anmelden zum Antworten