最终答案:准备接分了!哈!不过,你好自己好好研究一下,然后,在我上面上的一些程序段中也要用到我给的方法:其中"你的标题"可以用变量代替(声明一个全局的吧!) Private Sub DataGrid1_ColResize(ByVal ColIndex As Integer, Cancel As Integer) Dim inti As Integer Dim stri As String inti = Int(Val(DataGrid1.Columns(2).Width) / 220 - Len("你的标题") / 2) stri = Space$(inti) DataGrid1.Columns(2).Caption = stri + "你的标题" End Sub
Dim stri As String
DataGrid1.Columns(2).Alignment = dbgCenter
inti = Int((DataGrid1.Columns(2).Width - Len("你的标题")) / 2)
stri = Space$(inti)
DataGrid1.Columns(2).Caption = stri + "你的标题"
另外你也可以自己发挥一下,我上面的代码只不过是简单的介绍,具体的要你自己动手了,不难的!
如:"^编号 |^ 检验类型 |^ 产品分类 |^ 规格型号 |^ 年度 "
我是用在msflexgrid控件上的,datagrid没有用过,不只是不是
不行的话,那就是前面的Dim inti As Integer有问题了,你改一个:
Dim inti As Single 试一试,不行你再试一试其它的数据类型!
Text1.Text = Str(DataGrid1.Columns(2).Width)
说明:DataGrid1.Columns(2).Width可以引用。
要不你改一下:
inti = Int(Val(Str(DataGrid1.Columns(2).Width)) - Len("你的标题")) / 2)
不行再回复一下吧!我在线等。
Private Sub DataGrid1_ColResize(ByVal ColIndex As Integer, Cancel As Integer)
Dim inti As Integer
Dim stri As String
inti = Int(Val(DataGrid1.Columns(2).Width) / 220 - Len("你的标题") / 2)
stri = Space$(inti)
DataGrid1.Columns(2).Caption = stri + "你的标题"
End Sub
窗体的RESIZE和DATAGRID的RESIZE里都要加入以上代码.
以上代码我试过啦,没问题.