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

Langage Delphi Discussion :

TShellTreeview - Look selected et Créer nouveau dossier


Sujet :

Langage Delphi

  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut TShellTreeview - Look selected et Créer nouveau dossier
    Bonjour,

    J'ai 2 questions concernant la classe TShellTreeview :

    1. Est-il possible d'avoir l'option "Créer nouveau dossier" lorsqu'on fait un clic droit sur le Treeview, comme dans l'explorateur de Windows ?

    2. Est-il possible de mettre en évidence un répertoire à l'affichage du ShellTreeview ? J'aimerais utiliser la propriété "selected" mais elle demande un TTreeNode, alors que j'ai le path en String et ne trouve pas comment trouver le noeud grâce à lui.

    Merci pour vos conseils

  2. #2
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Pour ta question 1 dans la JVCL il y a un TJvBrowseForFolderDialog qui te permets ça (voir l'exemple dans \jvcl\examples\JvWinDialogs\ )

  3. #3
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Citation Envoyé par philnext Voir le message
    Pour ta question 1 dans la JVCL il y a un TJvBrowseForFolderDialog qui te permets ça (voir l'exemple dans \jvcl\examples\JvWinDialogs\ )
    Merci philnext pour le lien. Nous n'utilisons pas la JVCL actuellement, et ça me semble un peu "lourd" à installer juste pour une fonctionnalité dont j'ai besoin à un seul endroit. De plus l'option "Create new folder" n'est pas primordiale, ça aurait juste été un "plus".

    Par contre le fait de pouvoir mettre en surbrillance un répertoire à l'ouverture de la fenêtre contenant le ShellTreeview est beaucoup plus importante, et là je suis surpris de n'avoir aucune réponse. Je ne pensais pas que c'était si compliqué.

    Donc je refais un petit "up" pour la 2e question.

  4. #4
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Dans ce composant tu as une propriété Directory qui si tu la renseigne par un répertoire, pointe sur ce repertoire, qui est en surbrillance, à l'ouverture de la fenêtre.
    Pour la JVCL c'est vrai que c'est un peu 'lourd' mais l'installation est simple c'est vraiment une référence avec des exemples pour chaque composant ou presque.
    Je te conseille de l'installer et de passer 2 heures à compiler les différents exemples si ça te déplait : tu désinstalles !

  5. #5
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 720
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 720
    Points : 15 106
    Points
    15 106
    Par défaut
    Citation Envoyé par MiJack Voir le message
    Par contre le fait de pouvoir mettre en surbrillance un répertoire à l'ouverture de la fenêtre contenant le ShellTreeview est beaucoup plus importante, et là je suis surpris de n'avoir aucune réponse. Je ne pensais pas que c'était si compliqué.

    Donc je refais un petit "up" pour la 2e question.
    Yop !

    J'avais ça dans un coin :
    - un edit Edit1
    - un bouton btnGoTo
    - un ShellTreeView stvDiskExplorer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.btnGoToClick(Sender: TObject);
    begin
      stvDiskExplorer.Path := Edit1.Text;
      stvDiskExplorer.SetFocus; // en surbrillance
    end;
    Je viens de tester avant de poster, ça semble correspondre à ce que tu cherches.
    Mais par ailleurs, attention aux fuites mémoire avec le TShellTreeView (google est ton ami : memory leak +TShelltreeview +Delphi), tu risques d'avoir des surprises selon l'application envisagée...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  6. #6
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Oui effectivement le SetFocus() permet de mettre en évidence le répertoire

    Pour les memory leak, je croyais que ces problèmes étaient réglés avec la classe TShellTreeview de Delphi2007, mais effectivement il y avait 2 fuites et j'ai pu les corriger grâce à mon ami google, merci

    Concernant la JVCL, j'essaierai de trouver un moment pour la tester

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

Discussions similaires

  1. [XL-2007] créer un nouveau dossier en vba
    Par deubelte dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/05/2009, 21h27
  2. créer un nouveau dossier sur serveur ftp distant
    Par marion5515 dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 18/05/2008, 22h39
  3. Bouton "nouveau dossier" avec selection de dossiers
    Par Flow_75 dans le forum C++Builder
    Réponses: 8
    Dernier message: 29/03/2007, 22h19
  4. [VBA]créer un nouveau dossier et y copier un fichier en auto
    Par Christophe93250 dans le forum Access
    Réponses: 3
    Dernier message: 03/01/2006, 14h15
  5. Comment créer un nouveau dossier par programmation ?
    Par annecyrond dans le forum Langage
    Réponses: 3
    Dernier message: 27/03/2003, 07h59

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