我用以下语句将MSFlexgrid的单元格居中,Dim i, j As Long
Dim cols, rows As Long
cols = MSFlexGrid1.ColSel
rows = MSFlexGrid1.RowSel
j = MSFlexGrid1.Col
i = MSFlexGrid1.Row
For i = i To rows
For j = j To cols
MSFlexGrid1.Row = i
MSFlexGrid1.Col = j
MSFlexGrid1.CellAlignment = flexAlignLeftCenter
Next
Next他为什么只将第一行居中,而且,这个语句执行后选择范围就变化了,怎样才能使原来的选择不变化。
Dim cols, rows As Long
cols = MSFlexGrid1.ColSel
rows = MSFlexGrid1.RowSel
j = MSFlexGrid1.Col
i = MSFlexGrid1.Row
For i = i To rows
For j = j To cols
MSFlexGrid1.Row = i
MSFlexGrid1.Col = j
MSFlexGrid1.CellAlignment = flexAlignLeftCenter
Next
Next他为什么只将第一行居中,而且,这个语句执行后选择范围就变化了,怎样才能使原来的选择不变化。
Dim cols, rows As Long'固有参数
cols = MSFlexGrid1.ColSel
rows = MSFlexGrid1.RowSel
j = MSFlexGrid1.Col
i = MSFlexGrid1.Row
For i = i To rows’--------------i
For j = j To cols’------------j
MSFlexGrid1.Row = i
MSFlexGrid1.Col = j
MSFlexGrid1.CellAlignment = flexAlignLeftCenter’--------非居中
Next
Next
参考下面的居中代码:
Private Sub Command1_Click()
With MSFlexGrid1
.rows = 10
.cols = 5
For i = 0 To 4
For j = 0 To 9
.Row = j
.Col = i
.Text = i * j
.CellAlignment = 3
Next
Next
End With
End Sub