IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

Mémorisation des propriétés d'une Form [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2015
    Messages : 252
    Points : 272
    Points
    272
    Par défaut Mémorisation des propriétés d'une Form
    Bonjour,

    je travaille toujours sur les TForm. Je cherche la meilleure approche pour mémoriser l'état (sauf wsMinimized), et éventuellement la position et la taille de la fenêtre "décidés" par l'utilisateur. Et comme d'habitude, je souhaite une approche portable (i.e. windows, linux, os X) donc par exemple cette approche typiquement VCL ne me convient pas. La mémorisation est liée au PC utilisé. Dans la mesure où il peut y avoir plusieurs utilisateurs différents sur un même PC, je suppose que la meilleure approche est un répertoire caché dans le GetUserDir ?

    Une autre solution ?

    Merci. Cordialement. AD

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Je n'aime pas trop la notion de répertoire caché. S'il y a des paramètres d'initialisation communs à tous les utilisateurs, j'utiliserais plutôt une BDD avec une table pour ces champs communs, et une table par utilisateur (identifié par exemple par GetUserDir) pour ceux propres.

    Ça pourrait n'avoir d'avantage que selon le volume des données d'initialisation ou en cas d'existence d'une BDD locale pour l'application.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2015
    Messages : 252
    Points : 272
    Points
    272
    Par défaut
    Bonjour,
    Citation Envoyé par tourlourou Voir le message
    Je n'aime pas trop la notion de répertoire caché.
    C'est pourtant couramment utilisé. Je parle de FileSetAttrUTF8(folder, faHidden). Sous Windows, on pourrait le placer dans C:\Users\xxxx\AppData\Local\monprojet sans le cacher, comme fait Lazarus. Mais ce n'est pas portable sous Linux et OS X... Caché ou non de toute façon, le principe reste le même et en effet, il n'est pas centralisé. Ce qui nécessite une attention particulière à la désinstallation du projet.

    Quant à savoir s'il vaut mieux utiliser une table SQLite ou un simple fichier Ini ou XML, je ne sais pas. S'il s'agit d'une approche centralisée, une BDD locale me semble recommandée. Dans la mesure où je dispose d'uniDac, je limite déjà les problèmes de dépendance de librairies sur mes accès mariaDB et PostgreSQL distants : un accès SQLite en plus n'a pas d'incidence au niveau du déploiement. Dans le cas contraire (i.e. décentralisé) un XML suffirait.

    Cordialement. AD.

  4. #4
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Salut,

    Sinon il existe GetAppConfigDir(False) qui renverra, sous Linux, /home/username/.config/AppliName (/etc/AppliName avec True) et C:\Doc_and_Set\Username\Local Settings\Application Data\AppliName\ (ou All Users à la place de Username\Local Settings si True) sous XP, dans lequel il sera enfantin de placer un .ini ou n'importe quoi d'autre.

    Désolé que ça soit caché, Y., mais c'est en natif sous Linux et parfaitement bien géré (la preuve ci-dessus).
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  5. #5
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2015
    Messages
    252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2015
    Messages : 252
    Points : 272
    Points
    272
    Par défaut
    Oui, oui... c'est là que cela va aller !
    Merci. AD.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lire les propriétés des composantes d'une form
    Par mig_2000 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 08/07/2009, 11h43
  2. Réponses: 2
    Dernier message: 07/02/2006, 20h57
  3. [C#][VB.Net]Récupérer la liste des dataadapter d'une form
    Par Sonny dans le forum Windows Forms
    Réponses: 12
    Dernier message: 11/01/2006, 20h13
  4. propritée d'une form
    Par zidenne dans le forum Composants VCL
    Réponses: 1
    Dernier message: 30/12/2005, 12h21
  5. Réponses: 2
    Dernier message: 04/10/2005, 20h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo