Composant ListBox (TListbox)
Ce composant est un composant de boîte de liste Windows standard qui affiche une série de listes où les utilisateurs peuvent sélectionner, rejoindre, supprimer ou modifier les éléments.
1 et 1 Utilisation typique des composants tllistbox
Les boîtes de liste sont souvent utilisées dans les applications Windows. La zone de liste peut répertorier plusieurs éléments dans une fenêtre roulable que les utilisateurs peuvent choisir. Par exemple, dans IDE de Delphi, lors de l'utilisation de la commande List de composants dans le menu Affichage, Delphi répertorie tous les composants du VCL. Le programme utilise principalement l'attribut des éléments pour contrôler divers éléments, tels que l'utilisation d'éléments.strings [] pour obtenir le contenu d'une certaine option, et items.add () et items.delete () Ajouter ou supprimer les entrées d'option. Spécifiez ou obtenez l'option actuelle via la propriété ItemIndex.
2 Propriétés importantes des composants TlistBox
· Colonnes Numéro de boîte de liste · ExtendedSelect Cette propriété est utilisée pour définir l'opportunité de sélectionner plusieurs éléments pour être sélectionnés simultanément à l'aide de la touche Maj et de la touche Ctrl · IntegralHeight La hauteur de la zone de liste est toujours un entier multiple de la hauteur de l'élément dans La liste de liste · ItemHeight Cette propriété est utilisée pour définir la hauteur de chaque élément dans la zone de liste · ItemIndex Cette propriété est utilisée pour définir le numéro de séquence des éléments sélectionnés dans la zone de liste · Les éléments de la zone de liste sont accessibles via La propriété des éléments · MultiSelect permet de sélectionner plusieurs éléments en même temps · SelCount renvoie le nombre d'éléments actuellement sélectionnés · Sélectionnés cette propriété est utilisée pour déterminer si l'élément spécifié est sélectionné · Tri cette propriété est utilisée pour définir si les éléments dans La zone de liste doit être triée de manière alphabétique · Style Cette propriété est utilisée pour définir le style de la zone de liste ci-dessous décrit les propriétés couramment utilisées du composant TListBox dans le programme.
(1) Attributs des colonnes
La valeur par défaut de cette propriété est 0 et la zone de liste s'affiche dans une seule colonne. Si cette propriété est définie sur une valeur supérieure à 0, la zone de liste remplira d'abord une colonne. S'il ne peut pas être complètement affiché dans une colonne, il sera affiché dans la colonne 2, la colonne 3, etc., mais seul le nombre de colonnes définies par la propriété Colonnes s'affiche à l'écran au maximum. Si cette propriété est définie sur 2, seules deux colonnes seront affichées sur l'écran.
(2) Propriété ExtendedSelect
Cette propriété est utilisée pour définir l'opportunité de sélectionner plusieurs éléments simultanément avec la touche Maj et la touche CTRL, à condition que la propriété multisecte soit définie sur true. L'utilisateur appuie et maintient la touche Maj. pour sélectionner plusieurs éléments (pas nécessairement continu).
(3) Propriété intégrale
Si cette propriété est définie sur true et que la propriété de style est définie sur IsownerDrawFixed, la hauteur de la zone de liste sera automatiquement ajustée à un multiple entier de la hauteur de l'élément dans la zone de liste. Si cette propriété est définie sur False, le dernier élément de la zone de liste peut ne pas être affiché en totalité, car la hauteur de la zone de liste n'est pas nécessairement exactement un multiple entier de la propriété ItemHeight.
(4) Attribut d'objets
Lorsque la propriété de style est définie sur Isownerfixed (définie par l'utilisateur), cette propriété est utilisée pour définir la hauteur de chaque élément dans la zone de liste. Si la propriété IntegralHeight est définie sur true, la hauteur de l'ensemble de la zone de liste sera automatiquement ajustée avec la valeur de la propriété ItemHeight. Si la propriété Style est définie sur Isstandard ou IsownerDrawvariable, la propriété ItemHeight aura dénué de sens.
(5) Attribut ItemIndex
Cette propriété est utilisée pour définir le numéro de séquence de l'élément sélectionné dans la zone de liste. Si la propriété Multiselect est définie sur true et que l'utilisateur sélectionne plusieurs éléments, cette propriété renvoie le numéro de séquence de l'élément avec la mise au point d'entrée. L'exemple de code du programme est le suivant:
[Delphi] Voir PlainCopyProceDuretForm1.FormCreate (Sender: Tobject); Vari: Integer; BeginListbox1.Multiselect: = FALSE; Button.Caption = 'MoveTotop'; Fori: = 1to10DolistBox1.items.add ('item' + inttostr (i)) fin; procéduretform1.button1click (expéditeur: tobject);
(6) Attributs des éléments
Tous les éléments de la liste des listes sont accessibles via la propriété des éléments.
[Delphi] Afficher PlainCopyVarf: fichier; i: Integer; BeginFori: = 0to (FileListbox1.items.count-1) DobegintryiffileListbox1.selected [i] thenbeginIfNotFileExists (FileListbox1.items.strings [i]) the .Items.strings [i] + 'notfound', mterror, [mbok], 0); continue; end; attribution file (f, fileListbox1.items.strings [i]); reset (f, l); listbox1.items. Add (inttoStr (FileSip (f)); CloseFile (F);
(7) Propriété multisecte
Si cette propriété est définie sur true, plusieurs éléments sont autorisés à être sélectionnés simultanément. Les utilisateurs peuvent maintenir les touches CTRL ou Shift, sélectionner les éléments avec la souris ou glisser directement avec la souris pour sélectionner.
(8) Propriétés triées
Cette propriété est utilisée pour définir si les éléments de la zone de liste doivent être triés de manière alphabétique. Pour les boîtes de liste triées, les éléments ajoutés en appelant Add () ou INSERT () se déplaceront automatiquement à l'endroit approprié. L'exemple de code du programme est le suivant:
[Delphi] Afficher PlainCopyProceTUtForm1.FormCreate (Sender: Tobject); Item1 '); listbox1.items.add (' item4 '); end;
(9) Attributs de style
Cette propriété est utilisée pour définir le style de la zone de liste. Il définit les 3 valeurs sélectionnées par l'utilisateur suivantes. • lbstandard: chaque élément est une chaîne et chaque élément a la même hauteur. • LBOWNERDRAWFIXED: L'élément n'est pas nécessairement une chaîne, mais peut également être une image. L'événement OnDrawitem est déclenché avant que chaque élément ne soit affiché. • lbownerDrawvariable: L'élément n'est pas nécessairement une chaîne, il peut également être une image et la hauteur de l'élément peut être différente. Deux événements sont déclenchés avant que chaque élément ne soit affiché.
3 et 3 Événements importants des composants TlistBox
· OnDrawitem Si la propriété de style est définie sur LBownerDrawFixed ou LBownerDrawvariable et que les éléments de la zone de liste doivent être repeints, l'événement sera déclenché. , l'événement sera déclenché
4 Façons importants pour les composants tlistbox
La méthode couramment utilisée du composant TlistBox dans les programmes est claire, ce qui est la fonction de supprimer toutes les options dans la zone de liste.
Comment l'élément dans Listbox affiche-t-il différentes couleurs en fonction du contenu
1. Modifiez la propriété de style de Listbox1 en lbownerDrawvariable2.
Par exemple:
[Delphi] Voir PlainCopyProceDuretForm1.Listbox1Drawitem (Control: TwinConTrol; Index: Integer; REct: Trect; State: TownerDrawstate); un numéro impair beginlistbox1.canvas.brush.color: = clwindow; listbox1.canvas.textrect (rect, rect.left, rect.top, listbox1.items [index]); Endelse // la couleur beginlistbox1.canvas lorsque l'index de l'index de Les éléments sont uniformes. .Color: = clhighlight; listbox1.canvas.textrect (rect, rect.left, rect.top, listbox1.items [index]); end; end;