RowSourceType-Eigenschaft
Gibt den Herkunftstyp für die Werte in einem Steuerelement an. Diese Eigenschaft ist zur Entwurfs- und zur Laufzeit verfügbar.
Control.RowSourceType[ = nSource]
Eigenschaftswerte
nSource
Folgende Einstellungen sind für die RowSourceType-Eigenschaft möglich:Einstellung Beschreibung 0 (Standard) Keine. Wenn der Standardwert verwendet wird, füllen Sie die Liste zur Laufzeit mit der AddItem- oder der AddListItem-Methode. 1 Wert (Value). Auffüllen durch eine durch Kommas getrennte Liste. 2 Alias (Alias). Wählen Sie Felder in der Tabelle mit der ColumnCount-Eigenschaft aus. 3 SQL-Anweisung. Ein SQL SELECT-Befehl, der einen Cursor oder eine Tabelle erstellt. 4 Abfrage (QPR). Geben Sie einen Dateinamen mit der Erweiterung QPR an. 5 Array (Array). Verwenden Sie die Columns-Eigenschaft zum Anzeigen mehrerer Dimensionen. 6 Felder (Fields). Eine durch Kommas getrennte Feldliste. Vor die Felder kann der Alias der Tabelle und ein Punkt gesetzt werden. 7 Dateien (Files). Die Liste wird aus dem aktuellen Verzeichnis aufgefüllt. Geben Sie in der RowSource-Eigenschaft einen Dateinamen mit Platzhaltern (wie z. B. *.dbf oder *.txt) oder eine Maske an. 8 Struktur (Structure). Felder aus der Tabelle, die in RowSource angegeben werden. Beachten Sie, dass, wenn RowSourceType auf 8 gesetzt wird und die RowSource-Eigenschaft leer ist, die aktuell ausgewählte Tabelle als Quelle für die Werte in einem Kombinationsfeld- (ComboBox) oder Listenfeld-Steuerelement (ListBox)verwendet wird. Andernfalls gibt die RowSource-Eigenschaft den Alias der Tabelle, den Namen der Tabelle oder den Namen der Datenbank an, die als Quelle für die Werte in einem Kombinationsfeld- oder Listenfeld-Steuerelement verwendet wird.
9 Popup (Popup). Wird nur aus Gründen der Abwärtskompatibilität bereitgestellt. Weitere Informationen zur Verwendung der verschiedenen Einstellungen für RowSourceType finden Sie unter Anwendung von Listenfeldern und Dropdown-Listenfeldern.
Beispiel
Im folgenden Beispiel wird ein Listenfeld erstellt. Die Einträge, die in dem Listenfeld angezeigt werden, stammen aus einem Array, dessen Name mit der RowSource-Eigenschaft angegeben wird. Die RowSourceType-Eigenschaft wird auf 5-Array gesetzt, um anzugeben, dass die Einträge in dem Listenfeld aus einem Array stammen.
Die MultiSelect-Eigenschaft für das Listenfeld ist auf Wahr (.T.) gesetzt und ermöglicht Ihnen so Mehrfachauswahlen aus dem Listenfeld. Der Eintrag oder die Einträge, die Sie in dem Listenfeld auswählen, werden mit den ListCount-, Selected- und List-Eigenschaften angezeigt. Dadurch wird die Anzahl der Einträge in dem Listenfeld sowie die Einträge, die Sie auswählen, festgelegt.
CLEAR
DIMENSION gaMyListArray(10)
FOR gnCount = 1 to 10 && Fill the array with letters
STORE REPLICATE(CHR(gnCount+64),6) TO gaMyListArray(gnCount)
NEXT
frmMyForm = CREATEOBJECT('Form') && Create a Form
frmMyForm.Closable = .f. && Disable the Control menu box
frmMyForm.Move(150,10) && Move the form
frmMyForm.AddObject('cmbCommand1','cmdMyCmdBtn') && Add "Quit" Command button
frmMyForm.AddObject('lstListBox1','lstMyListBox') && Add ListBox control
frmMyForm.lstListBox1.RowSourceType = 5 && Specifies an array
frmMyForm.lstListBox1.RowSource = 'gaMyListArray' && Array containing listbox items
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
Betrifft: Kombinationsfeld-Steuerelement (ComboBox) | Listenfeld-Steuerelement (ListBox)