Comment charger les paramètres dans l'application Qt avec QSettings
Il y a deux façons possibles:
- charger tous les paramètres dans certains struct
- valeurs de la charge à la demande
L'approche qui est mieux?
Qu'est-ce que le cas d'utilisation?
C'est un éditeur de texte. Les paramètres tels que windows maxiimized, récents-fichiers et ainsi de suite.
C'est un éditeur de texte. Les paramètres tels que windows maxiimized, récents-fichiers et ainsi de suite.
OriginalL'auteur user1180567 | 2013-01-16
Vous devez vous connecter pour publier un commentaire.
Il dépend de la façon dont vous allez utiliser votre fichier de paramètres. Voulez-vous permettre à l'utilisateur de votre application pour dynamiquement modifier les paramètres dans le fichier (.fichier ini par exemple) ? Ou les paramètres doivent être définis par le GUI ?
Si vous utilisez une interface graphique pour modifier les paramètres, je vous conseille de vous pour charger les paramètres principaux au début de votre application à partir d'une classe statique par exemple.
Puis, il n'y a pas de problème pour enregistrer vos valeurs modifiées à la demande en raison de la QSettings optimisation.
OriginalL'auteur Kévin Renella
Si vous êtes concerné, vous pouvez mettre chaque groupe logique de paramètres derrière une interface. Ensuite, construire un béton de classe qui utilise QSettings pour récupérer les paramètres de la demande.
Si vous trouvez que d'être un goulot d'étranglement des performances, de construire une classe concrète qui met en cache les paramètres. (Je n'ai jamais eu besoin de le faire. QSettings a toujours été assez rapide.)
OriginalL'auteur cgmb
Dans la documentation de
QSettings
, il dit qu'il a été optimisé vraiment bien.En interne, cela permet de garder une carte de QStrings à QVariants. Toutes les méthodes d'accès sont extrêmement utiles et faciles à utiliser.
Lorsque j'ai utilisé
QSettings
, je l'ai configuré de la même façon à leur exemple avecreadSettings()
etwriteSettings()
fonctions. Voir ce exemple environ à mi-chemin en bas de la page.Le moment je l'appelle
readSettings()
la QSettings objet est créé, il charge les valeurs sur la demande et qu'il conserve tous les paramètres dans certaines struct.Donc dans ma fonction principale-je m'assurer que j'ai mis mon nom de l'application et de mon nom de l'organisation, et j'ai aussi utiliser
QSettings::setFormat
, puis, après que chaque fois que je veux accéder à QSettings, je crée une instance de QSettings avec les paramètres par défaut et accéder aux paramètres.OriginalL'auteur phyatt