RowSourceType (Propiedad)
Especifica el tipo de origen para los valores de un control. Está disponible en tiempo de diseño y en tiempo de ejecución.
Control.RowSourceType[ = nSource]
Valores de la propiedad
nSource
Los valores para la propiedad RowSourceType son:Valor Descripción 0 (Valor predeterminado) Ninguno. Si utiliza el valor predeterminado, rellene la lista en tiempo de ejecución utilizando los métodos AddItem o AddListItem. 1 Valor. Se rellena con una lista delimitada por comas. 2 Alias. Utilice la propiedad ColumnCount para seleccionar campos de la tabla. 3 Instrucción SQL. Un comando SELECT de SQL que crea un cursor o una tabla. 4 Consulta (.qpr). Especifica un nombre de archivo con extensión .qpr. 5 Matriz. Establece las propiedades de columna para mostrar varias dimensiones. 6 Campos. Una lista de campos delimitada por comas. Los campos pueden llevar delante un punto y el alias de tabla. 7 Archivos. La lista se rellena desde el directorio actual. Especifique una estructura de archivo (como *.dbf o *.txt) u ocúltela en la propiedad RowSource. 8 Estructura. Campos de la tabla especificada en RowSource. Tenga en cuenta que cuando RowSourceType está establecido en 8, si la propiedad RowSource está vacía, se usa la tabla seleccionada como origen para los valores del control ComboBox o ListBox. En caso contrario, la propiedad RowSource especifica el alias de la tabla, el nombre de la tabla o el nombre de la base de datos usada como origen para los valores del control ComboBox o ListBox.
9 Emergente. Se incluye por compatibilidad con versiones anteriores. Para obtener más información acerca de cómo utilizar cada valor de RowSourceType, vea Aplicación de cuadros de lista y cuadros de lista desplegables.
Ejemplo
El siguiente ejemplo crea un cuadro de lista. El origen de los elementos que aparecen como elementos de un cuadro de lista es una matriz; el nombre de la matriz se especifica con la propiedad RowSource. La propiedad RowSourceType se establece como 5 (matriz) para especificar que una matriz es el origen de los elementos del cuadro de lista.
La propiedad MultiSelect para el cuadro de lista está establecida en el valor verdadero (.T.), lo que permite realizar varias selecciones desde el cuadro de lista. El elemento o elementos que elija en el cuadro de lista aparecerán usando las propiedades ListCount, Selected y List para determinar el número de elementos del cuadro de lista y los elementos que ha elegido.
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