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

Interfaces Graphiques Discussion :

GUIDATA Save [Débutant]


Sujet :

Interfaces Graphiques

  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 165
    Points : 137
    Points
    137
    Par défaut GUIDATA Save
    Bonjour,
    J'ai cherché des info sur la fonction GUIDATA

    Mais je suis plus embrouillé que aidé!

    Mon GUI crée des variables que je stocke dans mon workspace (à la base!).
    Mais je peux les stocker ailleurs, si on me dit comment
    Puis, une autre fonction de mon même GUI doit sauvgarder dans un fichier certaines variables que j'ai stocké dans mon workspace!

    Je ne sais pas si je suis claire

  2. #2
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 165
    Points : 137
    Points
    137
    Par défaut
    Alors j'avance tous à petit!
    J'arrive à enregistrer puis lire avec guidata

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    function pushbuttonAdd_Callback(hObject, eventdata, handles)
    %...
    handles.(char(header_Labels))=headerRead(allFileName);% header
    %....
     
    %save
    guidata(hObject, handles);
     
     
    function listboxData_Callback(hObject, eventdata, handles)
    %...
    header_Labels=handles.(char(header_Labels));
    %...
     
     
    %save
    guidata(hObject, handles);
    Mais je n'arrive pas à supprimer ces variables.
    Ma variable existe toujours!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    t=['clear ''handles.(',fileNameRemove{1},')''']
    eval(t)
    %save
    guidata(hObject, handles);
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    t=['clear ''handles.Glouc_64_Mass''']
    eval(t)
    handles
    Donc, comment supprimer un champs dynamique sans supprimer toute la variabale?

  3. #3
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 165
    Points : 137
    Points
    137
    Par défaut
    J'ai trouvé la fonction rmfield(

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    t=['handles = rmfield(handles,''',fileNameRemove{1},'_Mass'')'];
    eval(t)
     
    t=['handles = rmfield(handles,''',fileNameRemove{1},'_Time'')'];
    eval(t)
     
    t=['handles = rmfield(handles,''',fileNameRemove{1},'_Header'')'];
    eval(t)
    Donc maintenant, je ne stocke plus dans le workspace avec des assignin
    Tous est dans handles avec des guidata.
    Il me reste a faire un save de certaine de ces varables pour les enregistrer dans un fichier.

  4. #4
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Pourquoi utiliser eval ici ?
    Ca complique beaucoup l'écriture et la lisibilité du code, et on ne le répètera jamais assez : eval=evil
    Tu peux tout simplement faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    handles = rmfield(handles,[fileNameRemove{1},'_Mass']);
    Règles du Forum

    Adepte de la maïeutique

  5. #5
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 165
    Points : 137
    Points
    137
    Par défaut
    Citation Envoyé par caro95470
    on ne le répètera jamais assez : eval=evil
    Merci, ça marche super bien et on me l'avait jamais dis qu'il était méchant

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

Discussions similaires

  1. Unable to save result set
    Par souf dans le forum Requêtes
    Réponses: 3
    Dernier message: 19/07/2004, 15h41
  2. [Win32]Open/Save Dialog Box
    Par Chance666 dans le forum Windows
    Réponses: 2
    Dernier message: 07/01/2004, 16h47
  3. JBuilder 7 personnal sort à chaque save
    Par Hannouz dans le forum JBuilder
    Réponses: 4
    Dernier message: 17/12/2002, 22h53
  4. [VB6] [Graphisme] Dimensions d'une image au saving
    Par jeanseb dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 14/12/2002, 19h09
  5. Algo carry save adder
    Par bashou dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 18/10/2002, 11h32

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