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 :

Retenir et afficher les résultats sous forme de texte dans une boite static text


Sujet :

Interfaces Graphiques

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Retenir et afficher les résultats sous forme de texte dans une boite static text
    Bonjour,

    je veux réaliser un programme sur les modes de propagation dans les guides d'onde.

    J'ai déjà réalisé la majeure partie du programme mais je n'arrive pas à afficher tous les résultats dans la section static text de la boite de dialogue de l'interface. Cela ne me met que la dernière valeurs, les autres passent à la poubelle.

    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
    if (L<Lc1 && L>Lc2)
     
    resultats=(['\nle mode TE',num2str(m),num2str(n),' fonctionne']);
     
    if (Lc1<Lc2)
           Fmin=(3*10^8)/Lc2
           Fmax=(3*10^8)/Lc1
    else
           Fmax=(3*10^8)/Lc2
           Fmin=(3*10^8)/Lc1
    end
    else
          resultats=(['le mode TE',num2str(m),num2str(n),' ne fonctionne pas\n']);
    end
     
     
    set(handles.resultats, 'string', resultats);
    Cette partie du code fait partie de deux boucles while imbriquées, et j'aimerai qu'à chaque boucle cela m'affiche le résultat et que ca le garde dans la static text sans effacer les précédents.

    Une autre idée que j'ai eu avait été d'utiliser la fonction diary, mais je ne sais pas comment l'ouvrir directement après l'avoir créé (et donc afficher les résultats) et puis l'effacer grace à un bouton reset.

    Si jamais vous connaissez une fonction qui permet cela, je vous en serez très reconnaissant.

    Merci d'avance

  2. #2
    Membre éprouvé
    Avatar de rostomus
    Homme Profil pro
    Doctorant électronique et traitement du signal
    Inscrit en
    Décembre 2006
    Messages
    791
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant électronique et traitement du signal

    Informations forums :
    Inscription : Décembre 2006
    Messages : 791
    Points : 1 205
    Points
    1 205
    Par défaut
    Salut,

    Essaie ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    resultat={};
    while < cond 1>
           while < cond2>
                   .....
                   .....
                   resultat=cat(1,resultat,{'le mode TE....'});
            end
    end
    set(handles.resultat,'string',resultat)
    MATLAB 7.4 (R2007a) WIN XP SP2
    -------------------------------------

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Merci pour ton aide, car les résultats s'affichent mais pas comme je le souhaite.
    Avec ton code j'obtiens un affichage comme ceci:
    le mode TE
    00
    ne fonctionne pas
    ect..

    alors que je souhaiterai mettre tout sur une ligne du style:
    le mode TE 00 ne fonctionne pas
    le mode TE 01 fonctionne
    ect...

    Par contre je n'arrive pas à afficher avec la même méthode les Fmax et Fmin car selon Matlab il y aurait trop d'argument.
    Merci encore de ton aide.
    Si vous avez encore des idées je suis preneur merci!

  4. #4
    Membre éprouvé
    Avatar de rostomus
    Homme Profil pro
    Doctorant électronique et traitement du signal
    Inscrit en
    Décembre 2006
    Messages
    791
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant électronique et traitement du signal

    Informations forums :
    Inscription : Décembre 2006
    Messages : 791
    Points : 1 205
    Points
    1 205
    Par défaut
    Salut,


    peut-on voir ce que tu as fait?
    parce que je vois pas pourquoi il y a les saut de lignes, et aussi montres ce que tu'as fais pour les Fmax et Fmin.
    MATLAB 7.4 (R2007a) WIN XP SP2
    -------------------------------------

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Apres une bonne nuit de someil, j'ai trouve comment afficher les resultats sous la forme voulue (ce n'etait pas des {} a mettre mais des [])

    Par contre, lorsque je lance le programme a partir du fichier .fig, le programme se lance mais ne s'execute pas correctement, j'obtiens les erreurs suivantes.

    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
    ??? Reference to non-existent field 'resultats'.
     
    Error in ==> mode_de_propagation>calcul_Callback at 242
    set(handles.resultats, 'string', resultats)
     
    Error in ==> gui_mainfcn at 75
            feval(varargin{:});
     
    Error in ==> mode_de_propagation at 42
        gui_mainfcn(gui_State, varargin{:});
     
    ??? Error using ==> mode_de_propagation('calcul_Callback',gcbo,[],guidata(gcbo))
    Reference to non-existent field 'resultats'.
     
    ??? Error while evaluating uicontrol Callback

    Il ne se lance correctement que quand je le lance a partir du .m.

    Merci de ton aide.

  6. #6
    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
    C'est le comportement normal.
    Pourquoi voudrais-tu lancer ton prog depuis le .fig ?
    Règles du Forum

    Adepte de la maïeutique

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

Discussions similaires

  1. [XL-2007] Comment afficher une colonne simple sous forme de tableau dans une LISTBOX?
    Par ThamAL dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 18/10/2013, 17h19
  2. Réponses: 2
    Dernier message: 30/01/2013, 14h57
  3. Réponses: 3
    Dernier message: 18/06/2010, 10h56
  4. afficher le contenu d'une zone de texte dans une page WEB
    Par tomman dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 11/06/2007, 14h55
  5. Réponses: 5
    Dernier message: 23/08/2006, 19h42

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