首先在窗体上放置一个隐藏的Picture控件,因为下面要借助Picture控件的TextWidth方法来测量当前DataGrid控件表头文字的宽度。
代码如下:
Dim i As Long
'设置Picture1的字体格式与DataGrid的表头字体格式相同
Set Picture1.Font = DataGrid1.HeadFont
For i = 0 To DataGrid1.Columns.Count - 1 '遍历所有列
'使用Picture控件的TextWidth方法返回5个汉字的宽度,并加上100的校正间距
DataGrid1.Columns(i).Width = Picture1.TextWidth("五个汉字宽") + 100
Next