怎样输入二维数组?

有二维数组SR(1 to 7, 1to 10),如果要在窗口上输入数组SR的内容,除了TextBox之外,还有什么其他控件可以做到?(因为SR数组的元素太多,用TextBox控件在窗口上安排时很繁琐)。
SZ的各元素在窗口上要按行列安排妥各自的位置。
谢谢1楼的回答。但你用的是依次输入方法。而我需要SZ数组的各元素在窗口上要按行列安排妥各自的位置。而且随机挑选某一个元素输入,请教问有什么高招?

看看这个吧,在窗体上放一个命令按钮command1和一个文本框text1还有个MSFlexGrid 控件grid1

思路是这样的用grid1的每个单元格代表数组的元素,在单元格中输入数据,最后点保存判断每个单元格是否为空,如果不为空则把它的值保存到对应的数组元素中。

text1是为了给grid1输入数据的,因为我以前用的是VSFlexGrid控件,那个可以直接输入数据,这个MSFlexGrid好像不能,所以要用到text1.这个的思路是,当单击某个单元格时就让text1显示到这个单元格的位置来接收数据,接收完后把数据显示到相应的单元格中。
代码如下:

Dim SR(1 To 7, 1 To 10) As Integer
Private Sub Command1_Click()
Dim i, j As Integer
For i = 1 To 7
For j = 1 To 10
If Len(Grid1.TextMatrix(i, j)) <> 0 Then SR(i, j) = Grid1.TextMatrix(i, j)
Next j
Next i
End Sub

Private Sub Form_Load()
Dim i As Integer
Grid1.Cols = 11
Grid1.Rows = 8
Grid1.FixedRows = 1
Grid1.FixedCols = 1
Text1.Text = ""
Text1.Visible = False
For i = 1 To 10
Grid1.TextMatrix(0, i) = i
Next i
For i = 1 To 7
Grid1.TextMatrix(i, 0) = i
Next i
Command1.Caption = "保存"
End Sub

Private Sub Grid1_Click()
With Grid1
c = .Col
r = .Row
Text1.Left = .Left + .ColPos(c)
Text1.Top = .Top + .RowPos(r)
Text1.Width = .ColWidth(c)
Text1.Height = .RowHeight(r)
Text1.Visible = True
Text1.Text = ""
Text1.SetFocus
End With
End Sub

Private Sub Text1_Change()
Grid1.TextMatrix(Grid1.RowSel, Grid1.ColSel) = Text1.Text
End Sub

如果有什么问题请给我留言
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-10-12
可以直接输在窗口上呀:
form.print

用表格
MSFlexGrid
怎么样?