VB6.0中DATAGRID控件设置各个列的列宽代码

请问我使用DATAGRID控件显示数据库的内容,我想设置各个列的列宽,请问这个设置的代码应该怎么写。

'//自动调整Grid各列列宽为最合适的宽度
Public Sub AdjustColWidth(frmCur As Form, gridCur As Object, Optional bNullRow As Boolean = True, Optional dblIncWidth As Double = 0)
'--------------------------------------------------------------------
'功能:
' 自动调整Grid各列列宽为最合适的宽度
'参数:
' [frmCur].........................................当前工作窗体
' [gridCur]........................................当前要调整的Grid
'--------------------------------------------------------------------
Dim i, j As Integer
Dim dblWidth As Double

With gridCur
For i = 0 To .Cols - 1
dblWidth = 0
If .ColWidth(i) <> 0 Then
For j = 0 To .Rows - 1
If frmCur.TextWidth(.TextMatrix(j, i)) > dblWidth Then
dblWidth = frmCur.TextWidth(.TextMatrix(j, i))
End If
Next
.ColWidth(i) = dblWidth + dblIncWidth + 100
End If
Next
End With
End Sub

========================================
以上是自动调整何时宽度的函数,下面为使用方法:

AdjustColWidth frmMain, MSFlexGrid1 '调整Grid各列列宽为最合适的宽度

以上函数是用于MSFlexGrid的,DataGrid差不了多少,把它改改就好了比如把MSFlexGrid1.ColWidth(i)改为DataGrid1.Columns(i).Width

========================================
以下是一些搜索到的资料:

http://zhidao.baidu.com/question/52474933.html?si=9
http://zhidao.baidu.com/question/5901160.html?si=3
http://zhidao.baidu.com/question/43806943.html?si=4
http://zhidao.baidu.com/question/6911265.html?si=6
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-03-13
Grid.Columns(index).Width = 数值
index为列数,第一列为0,第二列为1,以此类推。
“数值”为整数,自己测试调整。本回答被提问者采纳

VB6.0中DATAGRID控件设置各个列的列宽代码
'\/\/自动调整Grid各列列宽为最合适的宽度 Public Sub AdjustColWidth(frmCur As Form, gridCur As Object, Optional bNullRow As Boolean = True, Optional dblIncWidth As Double = 0)'--- '功能:' 自动调整Grid各列列宽为最合适的宽度 '参数:' [frmCur]...当前工作窗体 ' [gridCur]......

在VB6.0中网格控件的网格宽度如何设置?
DataGrid1.Columns(nCol).Width = dWidth 其中 nCol 表示列索引号, dWidth 表示列宽

VB高手请进.使用VB6.0的DATAGRID控件输出到EXCEL里时只显示可见行,请问...
strColName1 = Chr(65 + i) & "1"oSheet.Range(strColName1).Value = Me.DataGrid1.Columns(i).Caption '据DataGrid中的宽度设置EXCEL列宽 StrColName = Chr(65 + i) & ":" & Chr(65 + i)oSheet.Columns(StrColName).ColumnWidth = Int(Me.DataGrid1.Columns(i).Width \/ 90)Next ...

VB如何使用ADODC控件用代码连接数据库
Microsoft ADO Data Control 6.0和Microsoft DataGrid Control 6.0ADODC控件属性设置:1、在ADODC控件上右击,选择ADODC属性2、然后在通用选项卡中选择使用连接字符串,点击生成按钮3、然后选择Microsoft Jet 4.0 OLE DB Provider,点击下一步4、选择要连接打开的Access数据库文件(你要打开的ACCESS文件),...

VB6.0中DATAGRID控件怎么设置几行几列?
这个控件不能设置行列,他的行列与数据库中数据表行列相同,在表格的DATASOURCE属性中设置数据源,之后在控件中点击右键,选择检测结构,数据表的列数就出来了,至于行数,在程序运行时候,数据表中有多少行就会显示多少行。明白了吗?

vb6.0 给datagrid控件单元格赋值。
也可以通过语句来修改更新某单元格的值,但是,必须是先将该单元格设置为当前活动的单元格;比如:DataGrid1.Row = 0 DataGrid1.Col = 0 以上两句,是把DataGrid1的左上角的一个单元格,设置为当前单元格,然后可以通过下面语句进行赋值:DataGrid1.text = "你好!"

vb6.0中怎样使data所在记录是DataGrid光标所在行记录?
对了,在将MSFlexGrid控件和Data数据源绑定后在窗体的Form_Load事件中必须设定MSFlexGrid控件列的显示大小:Private Sub Form_Load()MSFlexGrid1.Cols = 7 With MSFlexGrid1 .ColWidth(0) = 0 .ColWidth(1) = 1500 .ColWidth(2) = 1500 .ColWidth(3) = 800 .ColWidth(4) = 800 .ColWidth...

vb6.0里怎样给 datagrid某一个网格赋值?
如果单元的文本过长而不能在该单元中显示,而且 WordWrap 属性被设置为 True,那么文本就会换行到同一单元内的下一行。为了显示换行的文本,可能需要增加单元的列宽度(ColWidth 属性)或者行高度(RowHeight 属性)。可以用 Cols 和 Rows 属性来决定MSHFlexGrid 控件中的列数和行数。常用属性有:Cols,...

vb6.0中datagrid控件显示很多行数据,如何让鼠标点中其中1行,数据显示...
TextMatrix(datagrid。RowSel, 7) Text6。Text = datagrid。TextMatrix(datagrid。RowSel, 5) end if End Sub 首先,要达到你的目的,应该将代码写在datagrid的单击事件里进行处理。在单击事件里,datagrid。RowSel可以7获得当前所点击的行,根据行号和列号,可以2具体定位到某一x单元q格。这样就能获取...

VB6.0中如何用按钮对DataGrid中的记录进行操作
添加命令;Private Sub Command1_Click()Adodc1.RecordSource = " select * from 超级用户表"Adodc1.Refresh Adodc1.Recordset.AddNew Adodc1.Recordset.Fields("用户名") = Trim(Text1.Text)Adodc1.Recordset.Fields("密码") = Trim(Text2.Text)Adodc1.Recordset.Update MsgBox "用户添加成功!!!

相似回答