As Steve told you, it is much better to use a grid to show a lot of data. You can use a SQL statement (or a parameterized read-only view) to obtain a cursor with the data you want to show. Then you would populate your grid. The best way to do this is as in the following example:
thisform.grid1.recordsource=""
select * from mytable into cursor mycursor
with thisform.grid1
.readonly = .t.
.recordsource="mycursor"
.column1.setfocus
endwith
thisform.refresh
First you blank the grid's recordsource, so it will not be thrown out of whack when you obtain your data, then you operate your select statement and then you repopulate the grid by assigning the obtained cursor as the grid's recordsource. I just gave you a short example, but you can use the above with - endwith construct to set each column's controlsource with a corresponding field in the cursor.
Rafael Copquin
Treasurer - Microsoft Users Group of Argentina (MUG)
www.mug.org.ar