2010-06-26 19 views
1

Hé les gars .. J'ai récemment essayé d'utiliser certaines classes spécifiques Maemo5 (par exemple QMaemo5ListPickSelector, etc ..), et que je reçois des erreurs de temps de compilation étranges ..Etranges erreurs de compilation lorsque j'utilise des classes Qt spécifiques à Maemo5 ..!

Voici un petit code que je tentais sur:

QMaemo5ValueButton *x = new QMaemo5ValueButton("Hello"); 
QStandardItemModel model (10,2); 
int i,j,k; 
for(j=0;j<=1;j++) 
{ 
    k=0; 
    for(i=0;i<=9;i++) 
    { 
     QStandardItem *item = new QStandardItem(QString("%0").arg(k)); 
     k+=5; 
     model.setItem(i,j,item); 
    } 
} 
x->setValueLayout(QMaemo5ValueButton::ValueBesideText); 
QMaemo5ListPickSelector *sel = new QMaemo5ListPickSelector(); 
sel->setModel(&model); 

x->setPickSelector(sel); 

QHBoxLayout *hbox = new QHBoxLayout(); 
hbox->addWidget(x); 

QVBoxLayout *vbox = new QVBoxLayout(); 
vbox->addLayout(hbox); 
vbox->addWidget(canvas); 

scrollArea->setLayout(vbox); 

setCentralWidget(scrollArea); 

Et voici l'erreur que je reçois:

alt text http://img28.imageshack.us/img28/7491/errorsln.png

Et c'est la même erreur plus en détail:

alt text http://img526.imageshack.us/img526/5134/errors2.png

J'ai installé le Nokia Qt SDK complet, et qui est ce qui est utilisé ici aussi ... Les bibliothèques spécifiques Maemo5 ne sont « vus » lorsque je sélectionne « Maemo » comme périphérique de sortie ..

Quelqu'un sait comment puis-je corriger ces erreurs ..?

J'ai eu du mal à la configuration Qt Creator la première fois autour ainsi, et je ne veux pas vraiment avoir toutes sortes de un/réinstalle tout recommencer :(

type incomplet
+0

vous pouvez poster comment et dans quel ordre vous incluez les fichiers de la bibliothèque qt? – nus

Répondre

1

signifie que la classe (dans ce cas struct) déclaration n'a pas été inclus correctement, dans ce cas QMaemo5ValueButtonPrivate.

Ceci est probablement dû à la circulaire comprend.

2

Il semble que vous n'avez pas inclus les en-têtes nécessaires. vous devez également ajouter maemo à votre fichier de projet qmake

#include <Maemo5ValueButton> 

et

QT += maemo5 

Pour plus d'informations consultez l'exemple suivant: http://doc.qt.nokia.com/qt-maemo-4.6/maemo5-listpickselector.html

+0

Avoir déjà essayé ces deux choses .. N'a pas aidé .. La chose intéressante à noter est que les erreurs sont uniquement liées à QMaemo5ValueButton .. Il n'y a pas d'erreurs similaires pour QMaemo5ListPickSelector .. – Ahmad

+0

Dans ce cas, faites un nouveau projet que juste utilise cette classe pour voir si l'erreur persiste. Si ce n'est pas le cas, vous devez essayer de faire votre chemin et essayer de créer le programme autonome le plus simple qui le reproduise. Ou commentez des parties de votre code et omettez certaines inclusions jusqu'à ce que l'erreur disparaisse pour le localiser. Assurez-vous de bien comprendre les subtilités des inclusions. Utilisez les gardes d'inclusion, incluez autant que possible dans les fichiers cpp au lieu des fichiers .h etc. Vérifiez les questions suivantes: http://stackoverflow.com/questions/691079/is-there-a-standard-include-convention-for -c – nus

+1

http://stackoverflow.com/questions/2762568/cc-include-file-order-best-practices – nus