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

MATLAB Discussion :

Ouvrir un fichier via une interface


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Février 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 3
    Par défaut Ouvrir un fichier via une interface
    Bonsoir les mecs,
    Je suis très novice en Matlab,donc ma question va être débile pour vous
    Mais bon,je suis totalement perdu.
    Voilà mon problème:
    Je voudrais afficher le nom ainsi que le chemin du fichier choisi :Voilà mon code

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %FIN DE LA FONCTION PRINCIPALE%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    function OpenFile
    global result
    result=0
    objet(1)=figure('units','pixels',...
        'position',[250 250 500 500],... 
        'color',[0.125 0.913 0.687],...
        'numbertitle','off',...
        'name','Open a file',... %%% le titre de l'interface
        'menubar','none',...
        'tag','interface');
     
    % Création de l'objet Uicontrol Ouvrir
    objet(2)=uicontrol('style','pushbutton',...
        'units','normalized',...
        'position',[0.5 0.5 0.1 0.05],...
        'string','Ouvrir',...    
        'callback',@file1,...
        'tag','bouton+');
     
    % Création de l'objet Uicontrol Text résultat
    objet(3)=uicontrol('style','text',...
        'units','normalized',...
        'position',[0.3 0.6 0.3 0.05],...
        'string','0',...
        'tag','resultat');
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %FIN DE LA FONCTION PRINCIPALE%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %DEBUT DE LA SOUS-FONCTION File1%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     function file1(obj,event)
    [filename1,pathname1, filterindex] = uigetfile(...
        {'m(*.txt,*.doc,*.Rh)';...
        '*.m'},...
        'Select the file you want to visualize','MultiSelect', 'on');
    if isequal(filename1,0)
       disp('User selected Cancel')
    else
       disp(['User selected', fullfile(pathname1, filename1)])
    result=fullfile(pathname1, filename1);
    % Actualisation de la propriété String de l'objet Uicontrol Text résultat
     set(objet(3),'string',num2str(result));
    end
     
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %FIN DE LA SOUS-FONCTION file1%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



    et Voilà l'erreur:
    ??? Undefined command/function 'objet'.
    ??? Error while evaluating uicontrol Callback.
    Merci pour vos aides

  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
    Je ne suis pas un "mec" mais je vais quand même répondre.

    Il te dit tout simplement qu'il ne connait pas la variable objet que tu essayes d'utiliser dans la sous-fonction file1.
    En effet chaque fonction a son propre environnement.

    Il faut donc que tu trouves un moyen de donner l'information "objet" à file1.

    Pour cela il y a plusieurs solutions expliquées dans ce tutoriel :
    Développement efficace des interfaces graphiques (GUI)

    Un conseil : indente proprement ton code, cela permet une lecture plus facile.
    Pour cela dans l'éditeur : CTRL+A puis CTRL+I

  3. #3
    Candidat au Club
    Inscrit en
    Février 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 3
    Par défaut
    C'est résolu merci.
    J'ai oublié l déclaration des variables dans le fonction file1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    function file1(obj,event)
    global result objet
    Merci....

  4. #4
    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
    Oui mais les variables globales c'est mal

    Si tu veux coder efficacement je te conseille de lire quand même le tutoriel pour éviter l'utilisation du GLOBAL.

  5. #5
    Candidat au Club
    Inscrit en
    Février 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 3
    Par défaut
    Bonsoir MONSIEUR
    Je voudrais maintenant après que je sélectionne une image , je l'affiche sur la même interface.
    Est ce que vous pourriez m'aider à améliorer mon dernier script pour avoir ce résultat s'il vous plait.

Discussions similaires

  1. [WD14] Ouvrir un fichier avec une application externe via LanceAppli()
    Par Fastolph dans le forum WinDev
    Réponses: 13
    Dernier message: 28/09/2011, 09h26
  2. Demander à l'utilisateur d'ouvrir un fichier via une macro
    Par frisou65 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/08/2008, 11h03
  3. Accéder au contenu d'un fichier via une URL en mode binaire
    Par sbelli dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 11/10/2005, 10h25
  4. [STRUTS][DOWNLOAD] download d'un fichier via une action
    Par FreshVic dans le forum Struts 1
    Réponses: 3
    Dernier message: 16/04/2004, 16h38

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