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 :

Affichage d'un résultat de calcul dans une fenêtre


Sujet :

Interfaces Graphiques

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut Affichage d'un résultat de calcul dans une fenêtre
    Bonjour,

    J'ai un petit problème concernant l'interface graphique. Au fait pour l'affichage de courbes et tout ça (à partir d'un bouton, c'est simple), mais je me demande si je peux à l'aide d'un bouton (sur une interface) afficher le résultat d'un calcul par exemple, afficher les résultats d'un calcul du "command window" dans une fenêtre à savoir des résultats numériques...

    Merci de votre aide

  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
    Bonjour,

    est-ce que tu utilise le GUIDE pour ton interface graphique??

    si c'est le cas, tu peux créer un objet text. ensuite utilise la fonction set:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(handles.text1,'string',num2str(x))
    .

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    Bonjour,

    merci pour la rapidité de la réponse

    oui j'utilise le guide,

    je vais essayer ce code, mais si je crée un objet text, ça sera un text statique, non?

    car à chaque exécution, mon résultat change, donc je voudrais que ça soit dynamique

    encore une chose, dans le petit code que tu as écris, je ne vois pas de callback, ou bien la variable que je vais appelée pour afficher mon résultat

  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
    Dans la sous fonction de "callback" du bouton, apres les calculs, mets cette instruction.

    attention, tu dois bien verifier le nom de l'objet "text", par defaut c'est text1, text2,..mais c'est tu change son nom, par exemple "affichage", tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(handles.affichage,'string',num2str(...))

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    ça marche vraiment pas, reprenons dès le début:

    J'ai une fonction disons azerty qui m'affiche un résultat numérique (sur le command window) que je voudrais afficher dans une fenêtre graphique

    Donc tu m'as bien dis, je crée une fenêtre graphique avec le guide, par la suite si j'ai bien compris j'insère l'icone TXT à gauche (pour un message text),il y a le tag bien sur que je change comme je veux, et puis dans le proprieties inspector il y a le callback, moi j'ai mis dans ce callback la fonction azerty du début, mais ça marche pas

    Est-ce la bonne méthode ? Détaille moi les étapes.

  6. #6
    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
    alors,

    • créer un objet text
    • créer un bouton
    • cliquer sur le "M-file editor" en haut, le 4 eme bouton à partir de la droite, le premier etant le bouton "RUN"
    • chercher dans le fichier la fonction "pushbutton1_Callback(hObject, eventdata, handles)"
    • ecrir dans cette fonction ton code + "set(handles.text1.....)"

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    ah j'ai compris ton intention mais c'est pas exactement ça, car mes calculs sont complexes et dans un autre fichier m, je peux pas les mettre sous le callback


    et avec l'instruction que tu m'as donné, le resultat s'est affiché sur le bouton lui même ,or je voudrais avoir une nouvelle fenêtre où j'aurais les résultats

  8. #8
    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
    OK,

    A la fin de ton programme (apres les calculs des resultats) tape ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    figure
    uicontrol('style','text','position',[100 100 200 200],'string',num2str(x))
    tu dois l'adapter bien sur

  9. #9
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    MERCIIIIIIIIIIIIIIIIIIIIIIIIIIII

    Ca marche, juste encore un truc


    Si je veux afficher plusieurs résultats je fais comment ? Dois-je écrire l'instruction plusieurs fois?

    Et par exemple si j'ai besoin d'écrire quelque chose et ajouter des commentaires, tu sais comme dans le fprintf,

    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    le résultat de la première exécution est: A
    le résulat de la deuxième exécution est B
     
      vous avez fini l'execution
    ainsi de suite

    je fais comment dans ce cas?

    encore merci pour ta patience

  10. #10
    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
    un exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    x=[3 5 2 3];
    v='ABCD';
    for i=1:4
    s{i}=sprintf('le resultat de %c est : %f',v(i),x(i));
    end
    figure
    uicontrol('style','text','position',[100 100 300 300],'string',s)

  11. #11
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    ca marche pas, j'ai détecté le problème mais pas la solution.
    Au fait au lieu de:j'ai un vecteur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    D=['EUR';'USD';'CHF';'SEK';'JPY';'GBP'];
    donc l'instruction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    s{i}=sprintf('le resultat de %c est : %f',v(i),x(i));
    donne des résultats bizarres

    J'ai donc utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fprintf('le resultat de %s = %f %% \n',D(i,:),x(i,:))
    avec x un vecteur préalablement calculé, et j'ai des résultats très bizarres.

    Pour l'affichage, si je veux afficher un autre résultat, d'un autre calcul dans la même fonction, je réécris le meme code, ou bien je peux ajouter une aure variable ?

    Si j'ai bien saisi ça marche seulement avec sprintf et non avec fprintf

    Juste maintenant, comment faire pour afficher d'autres résultats, j'ai réécris l'instruction une autre fois mais ça m'affiche que la dernière instruction. J'ai esssayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    uicontrol('style','text','position',[100 100 300 300],'string',d,s,z)
    c'est à dire, juxtaposer les résultats mais ça ne marche pas

  12. #12
    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
    C'est quoi d,s et z??

  13. #13
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    s,d,z sont les autres résultats que j'ai voulu afficher,

    d=sprintf(............................) et également z, tout comme s

    Mais j'ai trouvé, je viens de me rendre compte à quel point c'était facile... et oui parfois je pose la question avant d'avoir réfléchi

    merci pour tout et à bientôt

  14. #14
    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
    Peux-tu poster ta solution?
    ca peut interesser des gens.

    et n'oublie pas ce bouton

  15. #15
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    Dis moi ou est ce que je peux poster la solution?
    ya t-il un lien spécifique?

  16. #16
    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
    Citation Envoyé par Marcusss
    Dis moi ou est ce que je peux poster la solution?
    ya t-il un lien spécifique?
    ICI

    Je veux dire comment t'as fais??

  17. #17
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Points : 21
    Points
    21
    Par défaut
    ok, c'est l'instruction que tu m'as montré

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    x=[3 5 2 3];
    v='ABCD';
    for i=1:4
    s{i}=sprintf('le resultat de %c est : %f',v(i),x(i));
    end
    figure
    uicontrol('style','text','position',[100 100 300 300],'string',s)
    si on a un autre résultat qu'on veut afficher, il suffit de le mettre dans s{5},s{6} etc...
    tout les résultats qu'on voudra afficher seront stockés dans une variable s,
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    s{5}=sprintf('J'ai résolu le prolème')

  18. #18
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 313
    Points : 52 939
    Points
    52 939
    Par défaut
    Une autre solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    x=[3 5 2 3];
    v='ABCD';
     
    s=sprintf('le resultat de %c est : %f\n',[v;x]);
     
    figure
    uicontrol('style','text', ...
    'position',[100 100 300 300], ...
    'string',s)

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 19/08/2012, 14h31
  2. [XL-2010] Résultat du calcul d'une feuille dans une autre
    Par patgravure35 dans le forum Excel
    Réponses: 6
    Dernier message: 17/12/2010, 17h14
  3. [XL-97] Ecrire résultat calcul dans une colonne déterminée
    Par Bocage dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/04/2009, 18h24
  4. Réponses: 8
    Dernier message: 27/12/2007, 12h55
  5. Affichage des résultats dans une fenêtre
    Par yoyo69 dans le forum MATLAB
    Réponses: 2
    Dernier message: 10/12/2007, 09h06

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