Freigeben über


List-Eigenschaft

Ein Zeichenfolgen-Array, das zum Zugriff auf Einträge in einem Kombinationsfeld- (ComboBox) oder Listenfeld-Steuerelement (ListBox) verwendet wird. Diese Eigenschaft steht Ihnen zur Entwurfszeit nicht zur Verfügung; zur Laufzeit besteht Lese-/Schreibzugriff.

Control.List(nRow [, nCol]])[ = cChar]

Eigenschaftswerte

  • nRow
    Bezeichnet die Zeile des Eintrags, der über die Anzeige Order abgerufen werden soll. So bezeichnet z. B. nRow = 3 die dritte in der Liste angezeigte Zeile.
  • nCol
    Bezeichnet die Zeile des Eintrags, der über die Sortierfolge des Bildschirms abgerufen werden soll. So bezeichnet z. B nCol = 2 die zweite in der Liste angezeigte Spalte. Wird nCol nicht angegeben, ruft die List-Eigenschaft standardmäßig die erste Spalte auf. Geben Sie nCol nur für mehrspaltige Kombinationsfeld- (ComboBox) und Listenfeld-Steuerelemente (ListBox) an.
  • cChar
    Gibt einen Wert an, der zu einem Kombinations- oder Listenfeld hinzugefügt wird.

Hinweise

Die List-Eigenschaft arbeitet mit der ListCount-Eigenschaft zusammen; das Nummerieren einer Liste von 1 bis ListCount gibt alle Einträge in der Liste zurück.

Array-Funktionen können nicht mit der List-Eigenschaft verwendet werden. Wird die RowSourceType-Eigenschaft auf 5 (Array) und die RowSource-Eigenschaft auf ein Array von Werten, die in der Liste enthalten sein sollen, eingestellt, können Sie Array-Funktionen im in der RowSource-Eigenschaft bezeichneten Array anwenden.

Anmerkung   Ist RowSourceType auf 0 oder 1 festgelegt, fügen Sie Einträge zu einem Kombinations- oder Listenfeld mit Hilfe der AddItem-Methode hinzu. Zum Entfernen von Einträgen verwenden Sie die RemoveItem-Methode. Um Einträge in alphabetischer Reihenfolge zu halten, wird vor dem Hinzufügen von Einträgen zur Liste die Sorted-Eigenschaft des Steuerelements auf Wahr (.T.) festgelegt.

Beispiel

Im folgenden Beispiel wird ListCount dazu verwendet, nacheinander alle Einträge anzuzeigen, die durch die List-Eigenschaft des Kombinations- oder Listenfeldes angegeben wurden.

Im folgenden Beispiel wird ein Listenfeld erstellt. Die Quelle der Einträge, die im Listenfeld angezeigt werden, ist ein Array. Dieses ist mit den Eigenschaften RowSourceType und RowSource angegeben.

Die MultiSelect-Eigenschaft für das Listenfeld ist auf Wahr (.T.) festgelegt und ermöglicht Ihnen so die Mehrfachauswahl aus dem Listenfeld. Die ListCount-Eigenschaft wird innerhalb einer FOR ... ENDFOR-Schleife zur Anzeige des/der im Listenfeld gewählten Eintrags/Einträge verwendet. Die Selected-Eigenschaft wird verwendet, um gewählte Einträge zu bestimmen und die List-Eigenschaft gibt diese Einträge zurück.

CLEAR

DIMENSION gaMyListArray(10)
FOR gnCount = 1 to 10  && Fill the array with letters
   STORE REPLICATE(CHR(gnCount+64),6) TO gaMyListArray(gnCount)
ENDFOR

frmMyForm = CREATEOBJECT('Form')  && Create a Form
frmMyForm.Closable = .F.  && Disable the Control menu box 

frmMyForm.Move(150,10)  && Move the form

* Add "Quit" command button and list box control
frmMyForm.AddObject('cmbCommand1','cmdMyCmdBtn')
frmMyForm.AddObject('lstListBox1','lstMyListBox')

* && Specifies an array containing listbox items
frmMyForm.lstListBox1.RowSourceType = 5
frmMyForm.lstListBox1.RowSource = 'gaMyListArray'

frmMyForm.cmbCommand1.Visible =.T.  && "Quit" Command button visible
frmMyForm.lstListBox1.Visible =.T.  && "List Box visible

frmMyForm.SHOW  && Display the form
READ EVENTS  && Start event processing

DEFINE CLASS cmdMyCmdBtn AS CommandButton  && Create Command button
   Caption = '\<Quit'  && Caption on the Command button
   Cancel = .T.  && Default Cancel Command button (Esc)
   Left = 125  && Command button column
   Top = 210  && Command button row
   Height = 25  && Command button height

   PROCEDURE Click
      CLEAR EVENTS  && Stop event processing, close Form
      CLEAR  && Clear main Visual FoxPro window
ENDDEFINE

DEFINE CLASS lstMyListBox AS ListBox  && Create ListBox control
   Left = 10  && List Box column
   Top = 10  && List Box row
   MultiSelect = .T.  && Allow selecting more than 1 item

PROCEDURE Click
   ACTIVATE SCREEN
   CLEAR
   ? "Selected items:"
   ? "---------------"
   FOR nCnt = 1 TO ThisForm.lstListBox1.ListCount
      IF ThisForm.lstListBox1.Selected(nCnt)  && Is item selected?
         ? SPACE(5) + ThisForm.lstListBox1.List(nCnt) && Show item
      ENDIF
   ENDFOR

ENDDEFINE

Siehe auch

AddItem-Methode | IndexToItemID-Methode | ItemIDToIndex-Methode | ListCount-Eigenschaft | ListItem-Eigenschaft | ListItemID-Eigenschaft | RowSource-Eigenschaft | RowSourceType-Eigenschaft | Sorted-Eigenschaft

Betrifft: Kombinationsfeld-Steuerelement (ComboBox) | Listenfeld-Steuerelement (ListBox)