VB 的datagrid自定义列如何添加?

VB 的datagrid自定义列如何添加?,第1张

界面里点击datagrid控件

法一:如果已经连接数据源、表、有查询语句,单击右键,选择“字段刷新”(retrieve fields),确定。

法二:单击右键,选择“编辑”(edit)编辑该控件,通过编辑控件(此时再次单击右键,插入行或列)完成

Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)

'显示用户所单击的单元的文字、行和列的信息

Debug.Print DataGrid1.TextDataGrid1.RowDataGrid1.Col

End Sub

这是你的第二个问题。

张志晨

第一个问题:

你自己试下:

通过使用 Columns 集合和 Column 对象的属性和方法,可以在程序中添加、删除列。

要在运行时添加一列,可以使用 Add 方法。如果首先声明一个变量,并将新对象赋给该变量,就可以用简明的代码设置各种属性。

Private Sub AddColumn()

'在最右边的位置添加一列。然后设置其 Visible、Width、

'Caption以及 Alignment 属性。DataField 属性则指定

' 该列将绑定到哪一个字段。

Dim c As Column

Set c = DataGrid1.Columns.Add(DataGrid1.Columns.Count)

With c

.Visible = True

.Width = 1000

.Caption = “我的新列”

.DataField = Adodc1.Recordset.Fields(“ProductName”).Name

.Alignment = dbgRight

End With

End Sub

可以使用方法来删除任意一列。请确保使用 ColIndex 参数来指定要删除的列。下面的代码将删除被单击的列。

Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)

DataGrid1.Columns.Remove ColIndex

End Sub

另外:

在VB6中,Datagrid控件应该是初学者最喜使用的控件之一,它对数据简单绑定却又往往束缚住手脚。正确的使用的Datagrid必须首先了解它的本质。

Datagrid的本质在于它从来就不是一个真正的网格控件。我们可以片面理解,一个真正的网格控件就是必须将数据脱离Recordset而读进本身的控件。如:Msflexgrid,Mshflexgrid,Spread这些都属于真实的网格控件,我们可以独立的设置这些控见的rows,cols。相反Datagrid,Listview则不属于网格控件。

了解完本质,则可以清楚的知道,因为Datagrid不能将数据读进自身,所以实际它是脱离不了Recordset,我们需要显示的数据效果,只能通过ADO控件来 *** 纵Recordset的表现形式来完成任务。

建议转学VS2011,学习Msflexgrid,Mshflexgrid控件知识。

列数是自动的,就是记录集的字段数

'Ctrl+t找Microsoft DataGrid Control....

'菜单"工程"->"引用" 找 Microsoft ActiveX Data Object....

Dim cn As New ADODB.Connection

Dim rst As New ADODB.Recordset

Dim SqlStr As String

cn.Open "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &App.Path &"\db1.mdbMode=ReadWritePersist Security Info=FalseJet OLEDB:Database Password=111"

SqlStr = "Select * From 某个表"

rst.CursorLocation = adUseClient

rst.Open SqlStr, cn, adOpenDynamic, adLockOptimistic, adCmdText '打开记录集

Set DataGrid1.DataSource = rst '给DataGrid修改数据源


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11547987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存