QEventLoop: Ne peut être utilisé sans QApplication
Je suis en train de valider un fichier xml à l'encontre d'un schéma spécifique.
Donc, je suis le chargement du schéma dans le QXmlSchema objet. Mais j'obtiens des erreurs étranges.
Mon code ressemble à ceci:
int main() {
QUrl url("http://www.schema-example.org/myschema.xsd");
QXmlSchema schema;
if (schema.load(url) == true)
qDebug() << "schema is valid";
else
qDebug() << "schema is invalid";
return 1;
}
Lorsque j'essaie d'exécuter le dessus morceau de code, Qt erreurs en disant:
QEventLoop: Ne peut être utilisé sans QApplication
QDBusConnection: système D_Bus connexion créée avant QCoreApplication.
L'Application peut se conduisent mal.
QEventLoop: Ne peut être utilisé sans QApplication
Mon Qt Designer version: qt4-designer 4:4.8.1-0ubuntu4.1
Mon Qt Creator version : qtcreator 2.4.1-0ubuntu2
Quelqu'un pourrait-il svp m'aider à résoudre ce problème.
Grâce
OriginalL'auteur sundar | 2012-05-22
Vous devez vous connecter pour publier un commentaire.
QXmlSchema
crée, entre autres choses, un gestionnaire de messages qui hérite deQObject
. Depuis ce gestionnaire de messages sera à l'aide de Qt système d'événement, d'une boucle d'événement (la structure qui gère les files d'attente et de routage des événements) est nécessaire. Comme les messages d'erreur vous dire, la boucle principale est créé avec votreQApplication
.Si vous êtes en train de créer une application graphique en général, vous devriez avoir une petite quantité de code dans votre
main()
fonction, quelque chose comme:Commencer votre code dans le constructeur de
MainWindow
:QCoreApplication a(argc, argv);
serait suffisant. Pourquoi pensez-vous qu'il veut tous les éléments d'interface graphique?merci beaucoup. Maintenant, il fonctionne très bien. Pour mon objectif de l'ajout QCoreAppication a(argc, argv) suffit.
Sondage un peu hostile, il y a @smerlin, pas besoin.
pas de soucis 🙂
Salut, je vais avoir un lien mais pas tout à fait la même question: stackoverflow.com/questions/46729425/...
OriginalL'auteur sjwarner