Private Sub adjustColWidth() Dim Max As Integer Dim i As Integer Dim j As interger For j = 0 To MSFlexGrid1.Cols - 1 Max = 0 For i = 0 To MSFlexGrid1.Rows - 1 If Len(Trim(MSFlexGrid1.TextMatrix(i, j))) > Max Then Max = Len(Trim(MSFlexGrid1.TextMatrix(i, j))) Next i MSFlexGrid1.ColWidth(j) = Max * 300 Next j End Sub test...
在Form的Resize模块中加入 With MSHFlexGrid1 .Left=MARGIN_Size 'MARGIN_Size为预设的边界宽度 .TOP=MARGIN_Size .Width=Me.ScaleWidth-2*MARGIN_Size '然后分别设定第列的宽度占总宽度的百分数 .ColWidth(0)=.Width*0.10 .ColWidth(1)=.Width*0.05 .ColWidth(2)=.Width*0.15 .ColWidth(3)=.Width*0.20 ......End With
Dim Max As Integer
Dim i As Integer
Dim j As interger
For j = 0 To MSFlexGrid1.Cols - 1
Max = 0
For i = 0 To MSFlexGrid1.Rows - 1
If Len(Trim(MSFlexGrid1.TextMatrix(i, j))) > Max Then Max = Len(Trim(MSFlexGrid1.TextMatrix(i, j)))
Next i
MSFlexGrid1.ColWidth(j) = Max * 300
Next j
End Sub
test...
With MSHFlexGrid1
.Left=MARGIN_Size 'MARGIN_Size为预设的边界宽度
.TOP=MARGIN_Size
.Width=Me.ScaleWidth-2*MARGIN_Size
'然后分别设定第列的宽度占总宽度的百分数
.ColWidth(0)=.Width*0.10
.ColWidth(1)=.Width*0.05
.ColWidth(2)=.Width*0.15
.ColWidth(3)=.Width*0.20
......End With