J'ai une application et l'utilisateur peut changer le dossier par défaut pour l'enregistrement des fichiers.Qt - Sauvegarde d'un chemin QString à QSettings dans regisrty
Le dossier dans lequel l'utilisateur enregistre les fichiers: QString SaveImagesDirectory;
Je veux que lorsque l'utilisateur quitte l'application, les données SaveImagesDirectory seront enregistrées dans le Registre.
J'ai essayé le code suivant:
QSettings settings(ORG_NAME, APP_NAME);
settings.setValue("LastGuiValue/LastSaveImagesDirectory",SaveImagesDirectory);
Le problème est que quand je rafraîchi le registre, il n'y avait pas de valeur dans LastSaveImagesDirectory.
Par conséquent, lorsque j'ai essayé de lire en utilisant le code suivant:
SaveImagesDirectory=settings->value("LastGuiValue/LastSaveImagesDirectory",QDir::currentPath()).value<QString>();
La variable SaveImagesDirectory n'a obtenu que le QDir::currentPath()
. J'ai regardé le registre et en effet le LastSaveImagesDirectory
était sans valeur.
Veuillez appeler la méthode 'sync()' et vérifier le résultat de la fonction 'status()' de QSettings. Peut-être que vous n'avez pas écrit les droits de registre par exemple. – eraxillan
Salut Axilles, Merci pour votre réponse. Je peux écrire dans le registre pour les valeurs entières. Que faut-il faire pour sauver une chaîne? Aidez-moi, s'il vous plaît ! – EVH671
@ EVH761 Alors, que retourne la fonction 'status()'? si elle renvoie la valeur 'NoError', alors vous devriez pouvoir stocker toutes les valeurs supportées par QVariant dans le registre - QString en fait partie. – eraxillan