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 :

Function varargout création 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
    Février 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 42
    Par défaut Function varargout création interface
    salut à tous en tant que débutant matlab,j'ai besoin de nouveau d'une confirmation. J'édite un code avec interface et je me sers d'un modèle.
    ci dessous une partie de mon code source. J'aurai 2 questions

    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
    "]% Begin initialization code - DO NOT EDIT
    function varargout = Essai(varargin)
    gui_Singleton = 1;
    gui_State = struct('gui_Name', mfilename, ... % je crée structure
        'gui_Singleton',  gui_Singleton, ...
        'gui_OpeningFcn', @Essai_OpeningFcn, ...
        'gui_OutputFcn',  @Essai_OutputFcn, ...
        'gui_LayoutFcn',  [] , ...
        'gui_Callback',   []);
    if nargin & isstr(varargin{1}) % 1ère condition
        gui_State.gui_Callback = str2func(varargin{1});%str2func('str') constructs a function handle, fhandle, for the function named in the string, 'str'.
    end
    
    if nargout %2ème condition
        [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
    else
        gui_mainfcn(gui_State, varargin{:});
    end
    % End initialization code - DO NOT EDIT
    1ère question) Je sais que nargin ( nargout) me renvoie le nombre d'argument en entrée,(sortie) de ma fonction Essai
    et je sais ce que fais la première condition if. Ce qui me travaille c'est la partie du code
    à partir de if nargout, je n'arrive pas à savoir ce qu'elle renvoie??, Je n'arrive pas à voir
    quelle genre de structure conditionnelle c'est (mes notions d'algo sont pas encore au point)??
    est ce que c'est une abréviation de :
    "if nargout & isstr(varargin{1})
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
    " Pourriez vous m'aider à y voir plus clair?

    2ème question)
    les accolades{}, permettent d'indexer la cellule qu'on veut de varargin.
    Donc "varargin{:}' permet d'indexer ttes les celllules allant de 1:nargout?
    "[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:})."
    je ne me retrouve pas dans le help de ma version Matlab.
    Merçi de votre attention.

  2. #2
    Expert confirmé
    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
    Par défaut
    Bonjour

    if nargout <=> if nargout >0 cad si il y a au moins un argument de sortie.

    Pour cette partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if nargout %2ème condition
        [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
    else
        gui_mainfcn(gui_State, varargin{:});
    end
    Elle signifie juste que l'appel se fait différemment suivant qu'on a des arguments de sortie ou pas.
    varagin{:} <=> varargin{1:nargin}

    Cela permet de donner en arguments de gui_mainfcn tous les arguments rentrés à ta fonction principale.

    Caroline

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 42
    Par défaut ok merçi
    salut caro!! merçi pour ton aide. Matlab est vraiment bien..... quand on sait ce qu'on fait

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

Discussions similaires

  1. Création interface intuitive
    Par justin92330 dans le forum Débuter
    Réponses: 3
    Dernier message: 11/12/2008, 18h22
  2. [LabView 7.1] Création interface graphique
    Par dodo91 dans le forum LabVIEW
    Réponses: 28
    Dernier message: 01/04/2008, 16h09
  3. Création interface de jeu
    Par bert_ dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 16/03/2008, 18h49
  4. Création interface utilisateur
    Par Yanns dans le forum VB.NET
    Réponses: 5
    Dernier message: 16/02/2008, 22h43
  5. [web] création interface
    Par totofe dans le forum Access
    Réponses: 7
    Dernier message: 13/07/2007, 09h35

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