1.我用mshflexgrid控件时 如何能够做到不改变列宽度的情况下
根据单元格里内容的多少自动扩充行的高度能做到吗 如果做不到应该用什么控件做2.我后来用vsflexgrid控件做时 用到了VSFlexGrid1.AutoSizeMode = flexAutoSizeRowHeight 但是还是不行 请高手指导下
用的对不对 如果不对针对VSFlexGrid控件要想实现我上面的功能应该怎么做 谢谢了
急!!!
根据单元格里内容的多少自动扩充行的高度能做到吗 如果做不到应该用什么控件做2.我后来用vsflexgrid控件做时 用到了VSFlexGrid1.AutoSizeMode = flexAutoSizeRowHeight 但是还是不行 请高手指导下
用的对不对 如果不对针对VSFlexGrid控件要想实现我上面的功能应该怎么做 谢谢了
急!!!
'(缺省的)不允许。用户不能用鼠标来重新调整大小。
.AllowUserResizing = flexResizeNone
'列。用户可以用鼠标来重新调整列的大小。
.AllowUserResizing = flexResizeColumns
'行。用户可以用鼠标来重新调整行的大小。
.AllowUserResizing = flexResizeRows
'行和列。用户可以用鼠标来重新调整行和列的大小。
.AllowUserResizing = flexResizeBoth
End With
Public Function setColWidth(MSHGrid As MSHFlexGrid, Form As Form, Optional RowNum As Integer = 0)
Dim i As Integer
Dim n As Long
Dim myWidth As Single
Dim rows As Integer
For i = 0 To MSHGrid.Cols - 1
If MSHGrid.ColWidth(i) <> 0 Then
myWidth = 0
If RowNum = 0 Then
For n = 0 To MSHGrid.rows - 1
If myWidth < Form.TextWidth(Trim(MSHGrid.TextMatrix(n, i)) & "AA") Then
myWidth = Form.TextWidth(Trim(MSHGrid.TextMatrix(n, i)) & "AA")
End If
Next
Else
'传入数据行数,防止为空退出
For n = 0 To RowNum - 1
If myWidth < Form.TextWidth(Trim(MSHGrid.TextMatrix(n, i)) & "AA") Then
myWidth = Form.TextWidth(Trim(MSHGrid.TextMatrix(n, i)) & "AA")
End If
Next
End If
MSHGrid.ColWidth(i) = myWidth
End If
Next
End Function