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

Delphi Discussion :

Récupérer le resultat de l'action browseforfolder


Sujet :

Delphi

Vue hybride

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 18
    Par défaut Récupérer le resultat de l'action browseforfolder
    Bonjour,

    J'utilise un SpeeButton associé à une action "browseforfolder".
    Je n'arrive pas à récupérer le répertoire sélectionné par un utilisateur (boite de dialogue declanchée par l'action) dans un TEdit.

    Merci pour votre aide.

  2. #2
    Membre Expert

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Par défaut
    A priori la propriété Directory se charge de te rendre ce que tu recherches.

    Voir la documentation du shellBrowser : http://www.etsimo.uniovi.es/delphi/f...e/brwsfldr.htm

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 18
    Par défaut
    Merci pour ton aide, je ne connais pas ce site, il a l'air tres interressant.

    Pour en revenir à ma question, en fait, j'ai oublié de préciser que j'avais plusieurs champs TEdit. A coté de chaque champs, j'ai placé un petit Speedbutton, chacun callé sur l'action "Browseforfolder".
    Du coup, je ne sais pas placer mon code (et quel code) pour que le chemin choisi par l'utilisateur s'affiche dans le bon TEdit. Je pense qu'il y a un moyen de savoir pour l'action "Browseforfolder", qui l'a appelé, et on l'on doit placer le retour utilisateur.

    Mais je n'arrive pas a voir si il faut plutot regarder du coté des événements des SpeddButton, ou de l'action.

    Cordialement, François

  4. #4
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut,

    Tu peux pour ce faire utiliser la propriété ActionComponent qui renvoie le composant client qui a déclenché l'action.

    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
     
    procedure TForm1.MonActionExecute(Sender: TObject);
    var
      SelectedFolder: String;  // Ton dossier sélectionné
      SenderComponent: TSpeedButton;
    begin
      // ...
      SenderComponent := TSpeedButton(TAction(Sender).ActionComponent);
      if SenderComponent = SpeedButton1 then
        Edit1.Text := SelectedFolder
      else if SenderComponent = SpeedButton2 then
        Edit2.Text := SelectedFolder
      else
        // ....
      end;
    end;
    Voilou, @+

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 18
    Par défaut
    Super, c'est exactement ça, merci beaucoup !

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 18
    Par défaut
    Et bien j'ai répondu un peu trop vite... et ensuite j'ai pris un peu de vacance... alors voila, j'ai toujours un souci. Pour récupérer l'emeteur de la demande, ça a l'air de fonctionner, mais rien ne s'affiche.
    J'ai essayé avec "SelectedFolder" et "SelectedDirectory", mais je n'arrive a rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    procedure TFrame_config.BrowseForFolder1Execute(Sender: TObject);
    var
      SelectedDirectory: String;  // Dossier sélectionné
      SenderComponent: TSpeedButton;
    begin
      SenderComponent := TSpeedButton(TAction(Sender).ActionComponent);
      if SenderComponent = SpeedButton_base then
        Edit_chemin_base.Text := SelectedDirectory
      else if SenderComponent = SpeedButton_image then
        Edit_chemin_image.Text := SelectedDirectory
      else
        // .... a completer plus tard ...
    end;
    Si sous avez encore un tout petit peu de temps pour m'aider à surmonter cette dificulté (qui me semble etre un truc de débutant)...
    j'ai encore du chemin a faire !

    François

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/09/2010, 14h15
  2. récupérer le resultat d'une action
    Par paolo2002 dans le forum JSF
    Réponses: 5
    Dernier message: 13/06/2008, 10h37
  3. recuperer le resultat de l'action dans la même jsp
    Par osman.amine dans le forum Struts 1
    Réponses: 2
    Dernier message: 28/12/2006, 11h18
  4. Récupérer des resultats Google pour mon appli ?
    Par Bruno13 dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 06/03/2006, 18h57

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