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 :

erreur de sauvegarde sous gui


Sujet :

Interfaces Graphiques

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 83
    Points : 30
    Points
    30
    Par défaut erreur de sauvegarde sous gui
    Bonjour,

    J'effectue une interface graphique sous Guide.

    J'aimerais insérer la possibilité de sauvegarder les courbes crées à l'intérieur de celui ci (j'ai 4 courbes, des objets de type axes).

    J'ai tenté d'enregistrer de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a=find_system(gcs,'Name','test');
    saveas(a,'fichier.fig');
    j'aurais 2 questions :

    1°) cette ligne de code était apparemment pas la bonne. J'ai tenté d''enregistrer mes courbes avec ces 2 lignes de code (ça n'affichait cependant pas d'erreur). Maintenant, dès que j'ouvre mon gui, les 4 courbes que j'avais voulu enregistrer s'affichent. J'aimerais donc savoir comment faire pour que rien ne s'affiche lors de l'ouverture de l'interface.

    2°) comment faire pour pouvoir enregistrer mes 4 courbes en 4 fichier .jpg?

  2. #2
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Juin 2009
    Messages : 53
    Points : 57
    Points
    57
    Par défaut
    Pour que rien ne s'affiche sur les axes, il suffit d'ajouter une fonction reset avce comme argument d'entré le handle de ton axe.

    Pour enregistrer, je vais voir.

  3. #3
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Juin 2009
    Messages : 53
    Points : 57
    Points
    57
    Par défaut
    Pour enregistrer, tu peux effectivement utiliser la fonction :
    saveas(h,'filename.fig')

    où h est le handle de ton axe (tu le fais quatre fois si tes axes sont séparés).

  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 828
    Points
    14 828
    Par défaut
    FIND_SYSTEM est une commande de Simulink donc forcément il ne trouve rien (sauf si tu as un modèle ouvert avec un bloc nommé test)

    SAVEAS ne peut a prioi sauvegarder que la Figure en entier pas uniquement les axes mais dans un 1er temps cela peut te convenir.
    Il faut donc écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    handleFigure = ...%soit tu as déjà accès à ce handle soit tu peut le trouver avec findobj par exemple
    saveas(handleFigure,'fichier.fig');
    %ou si une seule figure est ouverte :
    saveas(gcf,'fichier.fig');

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 83
    Points : 30
    Points
    30
    Par défaut
    ok, merci pour le reset, j'avais trouvé un truc semblable!

    En ce qui concerne la sauvegarde, j'ai effectué le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    %Récupération des handles des différents axes
    a = handles.axes1;
    b = handles.axes2;
    c = handles.axes3;
    d = handles.axes4;
     
     
    %Sauvegarde de la figure
    saveas(a,'fichier1.fig');
    saveas(b,'fichier2.fig');
    saveas(c,'fichier3.fig');
    saveas(d,'fichier4.fig');
    Et en résultat, il me sauvegarde 4 fois la même figure.. et ce n'est pas une image en format .jpg ou autre, lorsque que je veux l'ouvrir, ça lance mon interface, donc ce n'est pas exactement ce que je veux..

  6. #6
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Regarde ici

  7. #7
    Membre du Club
    Inscrit en
    Juin 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Juin 2009
    Messages : 53
    Points : 57
    Points
    57
    Par défaut
    tu peux imposer l'enregistrement en jpeg : il suffit de mettre
    'filename.jpg' au lieu de 'filename.fig'.

    Par contre c'est pa normal qu'il te mette quatre fois la même figure, si tes axes affichent des truc différents : qu'est-ce qui est affiché dans ton fichié sauvegardé ??

  8. #8
    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 828
    Points
    14 828
    Par défaut
    Citation Envoyé par Klinnmas Voir le message
    Par contre c'est pa normal qu'il te mette quatre fois la même figure, si tes axes affichent des truc différents
    Si c'est normal, c'est ce que je disais juste avant.
    MATLAB arrive tout seul à retrouver le handle de la figure à partir du handle de l'axe mais SAVEAS ne sauve que des figures (ou des blocks Simulink mais c'est une autre histoire).

    Il faut donc utiliser une autre fonction, et le lien donné par Duf convient donc très bien.

  9. #9
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 83
    Points : 30
    Points
    30
    Par défaut
    le pas doué en matlab revient à la charge

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    filename=handles.filename;
    cadre = getframe(gcf, [98;476;300;452]);
    imwrite(cadre.cdata,filename,'jpg');%ecriture image
    mais ça ne fait rien du tout, rien de visible en tout cas, c'est pas censé écrire l'image délimité par le cadre dans le fichier de nom "filename"?

  10. #10
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 83
    Points : 30
    Points
    30
    Par défaut
    Autant pour moi, j'ai réussi!!

    Merci beaucoup

  11. #11
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 83
    Points : 30
    Points
    30
    Par défaut
    Tant que je suis là, j'en profite pour poser une petite question.

    je voudrais nommer ses fichiers de la manière suivante :

    filename_texte_qui_varie_selon_la_courbe

    j'ai donc fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [filename,'_texte_qui_varie_selon_la_courbe']
    et il me met le résultat suivant (admettons que le fichier s'appelle test.txt) :

    test.txt_texte_qui_varie_selon_la_courbe

    y a-t-il un moyen de supprimer l'extension .txt ?

  12. #12
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Tu peux utiliser FILEPARTS pour récupérer uniquement le nom de fichier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [fichier, fichier] = fileparts(filename);
    Ou un peu plus bourrin (et il faut que se soit toujours la même extension):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    strrep(filename, '.txt', '');
    Ou encore:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    regexprep(filename, '\.[A-z]+$', '');

  13. #13
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 83
    Points : 30
    Points
    30
    Par défaut
    Nickel!

    j'ai utilisé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strrep(filename, '.txt', '');

    Merci bien

Discussions similaires

  1. "Erreur SQL générale" sous NT2000 avec une base ac
    Par aleister dans le forum Bases de données
    Réponses: 5
    Dernier message: 14/04/2005, 21h10
  2. Erreurs d'exécution sous delphi 5
    Par nkd dans le forum Langage
    Réponses: 3
    Dernier message: 06/11/2004, 18h25
  3. Erreur de sauvegarde
    Par Laurent MALAVASI dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 13/09/2004, 10h39
  4. Erreur démarrage "filesystem" sous RedHat 8
    Par stewen dans le forum Administration système
    Réponses: 14
    Dernier message: 02/12/2003, 12h37
  5. Réponses: 1
    Dernier message: 23/10/2002, 14h40

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