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

Composants VCL Delphi Discussion :

supprimer item d'une listbox a l'aide d'un popup menu


Sujet :

Composants VCL Delphi

  1. #1
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut supprimer item d'une listbox a l'aide d'un popup menu
    bonjour,

    en fait j'ai un popup menu avec "paramètres" et "supprimer", quand je clic sur supprimer j'aimerais supprimer l'élément que j'ai selectionné dans la listbox, c'est a dire avec quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Supprimer1Click(Sender: TObject);
    begin
         ///code de la supréssion de l'item selectionné de la listbox   
    end;
    mais je ne trouve pas :s

  2. #2
    Membre éclairé
    Avatar de MD Software
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 613
    Points : 680
    Points
    680
    Par défaut
    Si tu veux récupérer l'item sélectionné dans ta TListBox, utilise la propriété ItemIndex

  3. #3
    Membre confirmé
    Avatar de Philippe Gormand
    Inscrit en
    Mars 2002
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 330
    Points : 647
    Points
    647
    Par défaut ListBox
    Bonjour.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Procedure Sumprime1Click(Sender : Tobject);
    Var
       I  : Integer;
     
    Begin
         I := ListBox1.IntemIndex;
         ListBox1.Items.Delete(I);
    End;
    La liste Box est autmatiquement remise à jour.

    A+

  4. #4
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    en effet quelque chose du genre me permet de voir que ton code marche, permettant de retrouver le numero de l'item dans la liste, mais pour le supprimer?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Supprimer1Click(Sender: TObject);
    begin
         showmessage(inttostr(ListBox1.ItemIndex));
    end;
    Edit : tu a répondu avant moi lol dsl, merci cest niquel !

  5. #5
    Membre éclairé
    Avatar de denokan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 434
    Points : 746
    Points
    746
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ListBox1.DeleteSelected;

  6. #6
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    j'utilise ça mais quand je fais un clic droit et que aucun élément n'est sélectionné l'application me pond une erreur, j'ai tenté un try except mais ça na rien donnée :s

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    /////////////POPUP MENU DE LA LISTBOX/////////////////
    procedure TForm1.PopupMenu1Popup(Sender: TObject);
    begin
         //erreur si clic droit et rien ds la listbox !!
         if(tab_param[ListBox1.ItemIndex][0] = '') then
          Paramtres1.Enabled := false
         else
          Paramtres1.Enabled := true;
    end;
    /////////////FIN POPUP MENU DE LA LISTBOX/////////////////

  7. #7
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    If listbox.ItemIndex <> -1 then
      Showmessage('Y a eu un click')
    else
      Showmessage('Y a rien qui a ete clické !!!');
    Voir le petit code explicite ci dessus puis après un petit coups de sur itemIndex ne fera pas de mal ^^

  8. #8
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    c'est pas mal mais apres le message d'erreur le popup menu s'affiche toujours meme si je fais un autopopup := false il s'affiche...

    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
    procedure TForm1.PopupMenu1Popup(Sender: TObject);
    begin
         //erreur si clic droit et rien ds la listbox !!
         If ListBox1.ItemIndex <> -1 then
            begin
              Showmessage('Y a eu un click');
              PopupMenu1.AutoPopup := true;
            end
         else
             begin
                  PopupMenu1.AutoPopup := false;
                  Showmessage('Y a rien qui a ete clické !!!');
             end;
     
         {if(tab_param[ListBox1.ItemIndex][0] = '') then
          Paramtres1.Enabled := false
         else
          Paramtres1.Enabled := true;}
    end;

  9. #9
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    C'est un peu normal quand tu fais appel à ça tab_param[ListBox1.ItemIndex] , tab_param[-1] c'est impossible...

  10. #10
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    vui mais comment désactiver laffichage du popup menu si tab_param[-1] ?

  11. #11
    Membre éclairé
    Avatar de denokan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 434
    Points : 746
    Points
    746
    Par défaut
    regarde dans l'évènement OnPopup de ton menu...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Supprimer1.Enabled := ListBox1.ItemIndex >= 0;

  12. #12
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    enabled n'éxiste pas pour un popupmenu :/

  13. #13
    Membre éclairé
    Avatar de denokan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 434
    Points : 746
    Points
    746
    Par défaut
    Enabled est une propriété de TMenuItem... tu peux ainsi désactiver ou non chaque élément de ton menu un par un

  14. #14
    Membre confirmé
    Avatar de Philippe Gormand
    Inscrit en
    Mars 2002
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 330
    Points : 647
    Points
    647
    Par défaut PopupMenu
    Bon, bon, bon !

    Essais de travailler avec ça.

    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
     
    ListBox1.PopupMenu:= Nil;// Désactivation du popupMenu.
    ...
     
    ListBox1.PopupMenu := PopupMenu1.// Association du PopupMenu à la
                                                     // ListBox.
     
     
    //Et puis aussi
     
    If ListBox1.Items.Count = 0 Then Exit;
     
    // Ou bien 
     
    If ListBox1.Items.Count < 1 Then 
     begin
         // Traiter l'erreur 
    end;
    A+

  15. #15
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 75
    Points : 100
    Points
    100
    Par défaut
    Pas de Exit de préférence

Discussions similaires

  1. [XL-2013] impossible de supprimer des Items dans une listbox à choix multiple
    Par dmoluc dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 16/11/2013, 16h34
  2. Supprimer des Items dans une ListBox.
    Par abouhossam dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 23/01/2009, 11h01
  3. Réponses: 7
    Dernier message: 15/05/2006, 16h44
  4. [Question] Ajouter un item dans une ListBox
    Par Jihnn dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 29/12/2005, 19h38
  5. [debutant] supprimer elements dans une listbox
    Par F.F. dans le forum C++Builder
    Réponses: 8
    Dernier message: 02/07/2004, 11h38

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