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 :

valeur directement affichée après lancement de simulation dans interface


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 31
    Par défaut valeur directement affichée après lancement de simulation dans interface
    Bonjour,

    Dans mon interface je voulais avoir une case qui après le lancement de la simulation m'affiche directement la valeur de la variable, alors j'ai essayé simplement de créer un edit avec un callback avec le nom de la variable qui est mise dans mon workspace sous MATLAB:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    uicontrol(...
         'Parent',Temps_tourpanel(1),...
         'units','normalized',...
         'style','edit',...
         'position',[0.25,0.85,0.15,0.05],...
         'string','',...
         'callback',@Temps_tour_data)
    Avec Temps_tour_data, la variable dont la valeur doit s'afficher.

    Après j'ai pensé a faire un edit ou ma valeur safficherai associé à un pushbutton avec une fonction appelé pour le callback.

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    uicontrol(...
        'Parent',Temps_tourpanel(1),...
        'units','normalized',...
        'style','pushbutton',...
        'Fontweight','bold',...
        'fontsize',9,...
        'String','Temps au tour data  (s)',...
        'position',[0.05,0.85,0.15,0.03],...
        'callback',@Temps_tour_data);
     
    uicontrol(...
         'Parent',Temps_tourpanel(1),...
         'units','normalized',...
         'style','edit',...
         'position',[0.25,0.85,0.15,0.05],...
         'tag','Temps_au_tour1',...
         'string','',...
         'callback',@Temps_tour_data)
     
     
    function Temps_tour_data(obj,evnt)
    handles = guidata(gcbf);
    Temps_au_tour1=getappdata(gcbf,'valeur_de_Temps_au_tour1');
     
    %num = str2num;
    set(Temps_au_tour1, 'String');
    guidata(gcbf,handles);
    Après j'ai des erreur dans la fonction, normal car je ne sait pas trop quoi mettre dedans... en fait quand j'utilise cette fonction dans mon interface c'est pour des boucles et pas des valeurs uniques ce qui fait que en compilant le code j'ai des erreur.

    Si quelqu'un pouvais me renseigner.

    Merci.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Dans un premier temps, je présume que tu lances ta simulation par l'appui sur ton pushbutton affichant 'Temps au tour data (s)'.
    Donc tu dois associer seulement ta fonction callback à ce bouton, et non à l'edit (tu peux regarder ce message)
    Ensuite, pour effectuer l'affichage de cette valeur, il faut que tu comprennes l'utilisation du handle des objets:
    Dans un premier temps tu fixes leur nom en renseignant la propriété Tag:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    uicontrol('Tag','NomDuTag',...
    Puis dans un deuxième temps, tu accèdes/modifies leur propriétés grâce aux fonction get/set avec la syntaxe suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Propriete = get(handles.NomDuTag,'NomDeLaPropriete');
    set(handles.NomDuTag,'NomDeLaPropriete',nouvelle_valeur);
    Donc dans ton cas, cela donnerait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    uicontrol(...
         'Parent',Temps_tourpanel(1),...
         'units','normalized',...
         'style','edit',...
         'position',[0.25,0.85,0.15,0.05],...
         'tag','Temps_au_tour1',...
         'string','')
    Et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    T=getappdata(gcbf,'valeur_de_Temps_au_tour1');
    
    set(handles.Temps_au_tour1, 'String',T);
    guidata(gcbf,handles);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 31
    Par défaut
    Merci pour ces indications sur les fonctions. En effet c'était encore un peu flou...
    Ca fonctionne, donc nikel merci.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 18/09/2013, 11h20
  2. Réponses: 8
    Dernier message: 30/01/2009, 15h32
  3. [MySQL] Afficher valeur menu déroulant apres soumission du formulaire
    Par yagrasdemonde dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/12/2008, 18h06
  4. Valeur INI à afficher dans un TEdit
    Par bionicleman dans le forum Langage
    Réponses: 5
    Dernier message: 13/03/2008, 18h19
  5. Réponses: 2
    Dernier message: 27/03/2007, 23h04

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