Les Snippets

Connexion

Supprimer tous les items cochés d'une CheckListBox

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 07/12/2007 08:44:42 et initié par jrivet [Liste]
Date de mise à jour : 07/12/2007 11:09:57
Vue : 6471
Catégorie(s) : Trucs & Astuces, WinForm, Control
Langages dispo pour ce code :
- VB 2005
- C# 2.x
- VB6, VBA
- Delphi 5



Langage : VB 2005
Date ajout : 07/12/2007
Posté par jrivet [Liste]
DateMAJ : 07/12/2007
Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As _
  System.EventArgs) Handles MyBase.Load
        Dim Coche As Boolean = False
        'on ajoute des éléments à la checklistBox en cochant un sur deux
        For i As Integer = 1 To 6
            Chk.Items.Add("Item " & i, Coche)
            Coche = Not Coche
        Next
    End Sub
    Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As _
      System.EventArgs) Handles Button1.Click
        'on boucle pour chaque élément en partant du bas
        For i As Integer = Chk.Items.Count To 1 Step -1
            'si l'indice fait parti des indices "Coché" On Efface l'item
            If Chk.CheckedIndices.Contains(i) Then Chk.Items.RemoveAt(i)
        Next
    End Sub
Remarque :
Pour tester le code, sur une Form par défaut placez une ChekListBox nommée Chk et un Button nommé Button1
Langage : C# 2.x
Date ajout : 07/12/2007
Posté par jrivet [Liste]
private void button1_Click(object sender, EventArgs e)
{
    MessageBox.Show(RemoveCheckedItems(checkedListBox1).ToString() + _
      " élément(s) supprimé(s)");
}
/// <summary>
/// Fonction supprimant tous les items cochés dans une CheckedListBox
/// </summary>
/// <param name="chk">L'objet CheckListBox dont on doit supprimer les _
  élements</param>
/// <returns>Le Nombre d'items supprimés</returns>
public int RemoveCheckedItems(CheckedListBox chk)
{
    //initialise le résultat
    int result= 0;
    //on boucle pour chaque items
    for (int i = chk.Items.Count; i > 0; i--)
    {
        //si i est contenu dans les indices cochés
        if (chk.CheckedIndices.Contains(i))
        {
            //on efface l'items à l'indice i
            chk.Items.RemoveAt(i);
            //on incrémente le nombre d'éléments supprimés
            result++;
        }
    }
    return result;
}
Remarque :
Et voici la version C# un peu améliorer. C'est à présent une fonction prenant en parametre la CheckListBox et retournant le nombre d'élément supprimer.
Langage : VB6 , VBA
Date ajout : 07/12/2007
Posté par PCPT [Liste]
Function RemoveCheckedItems(oLB As ListBox) As Long
    RemoveCheckedItems = 0
    Dim As Integer
    With oLB
        For i = .ListCount - To Step -1
            If .Selected(i) Then
                .RemoveItem i
                RemoveCheckedItems = RemoveCheckedItems + 1
            End If
        Next i
    End With
End Function

Langage : Delphi 5
Date ajout : 19/01/2008
Posté par f0xi [Liste]
procedure DeleteChecked(CheckListBox: TCheckListBox);
var N : integer;
begin
  with CheckListBox do
  begin
    Items.BeginUpdate;
    try
      for N := Count-1 downto 0 do
        if Checked[N] then
          Items.Delete(N);
    finally
      Items.EndUpdate;
    end;
  end;
end;

Snippets en rapport avec : Supprimer, Checklistbox, Items, Cochés



Codes sources en rapport avec : Supprimer, Checklistbox, Items, Cochés

{JAVA / J2EE} SUPPRIMER/AJOUTER UNE LIGNE
cette application me permet d'ajouter une nouvelle ligne dont le contenu est copier d'un autre tabl...

{Delphi} DEPLACER LES ITEMS D'UNE LISTBOX VERS UNE AUTRE PAR DRAG AND DROP
- Les items sont insérés ou ajoutés, selon l'emplacement choisi dans la ListBox de destination. - L...

{ASP / ASP.NET} FONCTION : REMPLACER LES CARRACTÈRES ACCENTUÉS PAR LEUR ÉQUIVALENT NON ACCENTUÉS D'UN TEXTE GRÀCE À STRTR, FONCTION SIMILAIRE À CELLE DE PHP
Comme l'indique le titre, cette fonction permet la suppression des accents dans un texte. Je devais ...

{C / C++ / C++.NET} SSCANF POUR SUPPRIMER DES ESPACES (COMME TRIM())
trim() ne marche pas avec les phrases lrim() fonctionne avec phrase et mot rtrim() avec sscanf...

{C / C++ / C++.NET} SUPPRESSION RÉCURSIVE DE FICHIERS (DELTREE)
Ce code permet de supprimer tous les fichiers d'un répertoire (placé en paramètre) sans supprimer ce...

{C / C++ / C++.NET} [C/API] SUPPRESSION DE FICHIERS EN DOUBLE (NOMS/CONTENUS)
Bonjour, J'ai cherché plusieurs fois sur ce site un programme pour supprimer les fichiers en dou...

{Visual Basic, VB6, VB.NET, VB 2005} SUPPRIMER UN RACCOURCI DU BUREAU ET/OU DU MENU DÉMARRER
Mon code est simple et sert seulement à supprimer un raccourci du bureau ou du menu démarrer. Étant ...

{Visual Basic, VB6, VB.NET, VB 2005} SUPPRIMER DES FICHIERS EN DOUBLE (D'APRES LEUR NOM)
Permet de comparer et de supprimer des fichiers en double. Pour moi il me permet quand je grave des...

{C / C++ / C++.NET} SUPPRESSION D'UN RÉPERTOIRE
La fonction force_rmdir() force la suppression d'un répertoire, même s'il contient d'autres répertoi...

{C / C++ / C++.NET} LES ARBRES
un programme qui gerer un structure en utilisent les arbre binaire se programme permet de ajouter su...