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 :

Attempt to reference field of non-structure array. [Débutant]


Sujet :

Interfaces Graphiques

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 17
    Points
    17
    Par défaut Attempt to reference field of non-structure array.
    Bonjour,

    J'ai crée une interface graphique sous matlab. Elle contient deux radiobutton et un panel ou il y a du texte et des zones de texte à remplir. Le panel doit apparaître quand le radiobutton2 est coché.

    Voila le code des radiobutton:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    % --- Executes when selected object is changed in uipanelradio.
    function uipanelradio_SelectionChangeFcn(hObject, eventdata, handles)
     if hObject==handles.radiobutton2
         set(handles.Pluspaq, 'visible','on')
     else
         set(handles.Pluspaq, 'visible','off')
     end
    -> Pluspaq c'est le panel à afficher

    Quand je lance le fichier .m l'interface fonctionne, par contre quand je lance le .fig j'obtiens ce message d'erreur...

    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
    ??? Attempt to reference field of non-structure array.
     
    Error in ==> groupement>uipanelradio_SelectionChangeFcn at 83
     if hObject==handles.radiobutton2
     
    Error in ==> gui_mainfcn at 96
            feval(varargin{:});
     
    Error in ==> groupement at 42
        gui_mainfcn(gui_State, varargin{:});
     
    Error in ==>
    @(hObject,eventdata)groupement('uipanelradio_SelectionChangeFcn',get(hObject,'SelectedObject'),eventdata,guidata(get(hObject,'SelectedObject')))
     
     
    Error in ==> hgfeval at 63
            feval(fcn{1},varargin{:},fcn{2:end});
     
    Error in ==> uitools.uibuttongroup.childAddedCbk>manageButtons at 80
        hgfeval(cbk, source, evdata);
     
    ??? Error while evaluating uicontrol Callback
    Je ne comprends pas pourquoi j'ai ce message d'erreur.
    Si quelqu'un peut m'aider svp...

    Merci d'avance

  2. #2
    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
    Bonsoir,

    Pourquoi lances-tu le .fig? POur faire fonctionner ton interface, il suffit de lancer le .m...

    Bonne soirée,
    Duf
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 17
    Points
    17
    Par défaut
    Bonsoir duf42,

    Merci pour ton interet à mon poste.

    En fait, je lance le fichier .fig depuis une autre interface graphique après un click sur un pushbutton.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    function groupement_Callback(hObject, eventdata, handles)
    open groupement.fig;
    Du coup, j'ai besoin que mon interface marche au lancement d'un fig...

  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
    Il faut donc appeler ton .m tout simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    function groupement_Callback(hObject, eventdata, handles)
    groupement;
    En fait le .fig ne contient (en gros) que l'image, mais c'est le .m qui construit toutes les données qui sont utilisées pour faire fonctionner l'interface.
    Règles du Forum

    Adepte de la maïeutique

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 17
    Points
    17
    Par défaut So smart...
    Merci beaucoup, ça marche...

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

Discussions similaires

  1. [Débutant] [histfit] non-structure array error
    Par Loane69 dans le forum MATLAB
    Réponses: 2
    Dernier message: 18/05/2012, 22h14
  2. Attempt to reference field of non-structure array
    Par condrillon89 dans le forum Interfaces Graphiques
    Réponses: 10
    Dernier message: 21/05/2011, 18h25
  3. Attempt to reference field of non-structure array.
    Par gmachi10 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 26/06/2009, 09h01
  4. Réponses: 5
    Dernier message: 18/05/2007, 12h30
  5. Réponses: 5
    Dernier message: 20/10/2006, 14h31

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