Freigeben über


Selected-Eigenschaft

Gibt für ein Element eines Kombinationsfeldes oder Listenfeldes an, ob es ausgewählt ist. Diese Eigenschaft steht Ihnen zur Entwurfszeit nicht zur Verfügung; zur Laufzeit besteht Lese-/Schreibzugriff.

[Form.]Control.Selected(nIndex)[= lExpr]

Eigenschaftswerte

  • nIndex
    Gibt den Index eines Elements eines Kombinationsfeldes oder Listenfeldes an.
  • lExpr
    Die Selected-Eigenschaft kann eine der folgenden Einstellungen annehmen:
    Einstellung Beschreibung
    Wahr (.T.) Das Element ist ausgewählt.
    Falsch (.F.) (Standardwert) Das Element ist nicht ausgewählt.

Hinweise

Wenn die Selected-Eigenschaft für ein Listenfeld-Steuerelement (ListBox) verwendet wird, wird auch die ListItem-Eigenschaft festgelegt und das ProgrammaticChange-Ereignis ausgelöst.

Die Selected-Eigenschaft ist besonders dort sinnvoll, wo der Benutzer eine Mehrfachauswahl treffen kann. Sie können schnell feststellen, welche Einträge einer Liste ausgewählt sind. Sie können diese Eigenschaft auch verwenden, um aus einem Programm heraus Einträge einer Liste auszuwählen oder die Auswahl aufzuheben. Um zu prüfen, ob der dritte Eintrag eines Listenfeldes ausgewählt ist, geben Sie Folgendes aus:

IF MyList.Selected(3)
  WAIT WINDOW "It's selected!"
ELSE
  WAIT WINDOW "It's not!"
ENDIF

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 wird auf Wahr (.T.) festgelegt und ermöglicht so die Mehrfachauswahl aus dem Listenfeld. Der Eintrag oder die Einträge, die Sie in dem Listenfeld auswählen, werden mit den Eigenschaften ListCount, Selected und List 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 window pop-up menu

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

AddItem-Methode | Clear-Methode | List-Eigenschaft | ListCount-Eigenschaft | ListItemID-Eigenschaft | MultiSelect-Eigenschaft | NewItemID-Eigenschaft | RemoveItem-Methode | RemoveListItem-Methode | SelectedID-Eigenschaft | TopItemID-Eigenschaft

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