如何使vb里的list表格中数据对齐?

请教如何使我list的表里的数据像图3-14一样对齐??... 请教如何使我list的表里的数据像图3-14一样对齐?? 展开
 我来答
l7722526
2019-11-10 · TA获得超过2.7万个赞
知道大有可为答主
回答量:2.8万
采纳率:84%
帮助的人:3580万
展开全部
List1.AddItem values(i, 0) 改为:

List1.AddItem values(0,i)  先列 后行

请读一下下面的资料

使用 GetRows 方法将从 rdoResultset 中的一个或多个整行复制到一个二维数组。数组的第一维标识列,第二维指示行数,如下所示:

avarRows(intColumn)(intRow)

为了得到第二行的第一列,使用如下方法:

col1 = avarRows(0,1)

为了得到第一行的第二列,使用如下方法:

col2 = avarRows(1,0)

如果需要的行比可用的行还大,就只返回可用行。使用 Ubound 确定实际可取得多少行,并根据返回的行数重新调整数组。例如,将结果返回到名为 varA 的 Variant 中,可以确定可实际返回多少行供使用:

numReturned = Ubound(varA,2) + 1

使用 "+ 1" 是因为返回的第一个数据是在数组的第 0 个元素中。可以取得的行数受限于可用的内存,应选用适合应用程序的行数-如果表很大,不要希望使用 GetRows 将整个表或结果集都放入数组。

................................

张志晨:下面是我的代码:

Private Sub Command1_Click()

Dim Conn As New ADODB.Connection

Dim Rs As New ADODB.Recordset

Dim mdbPath As String

mdbPath = getFilePathName(CommonDialog1, "mdb") '调用我写的对话框函数

If mdbPath = "" Then Exit Sub

Dim i As Integer

Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _

mdbPath & ";Persist Security Info=False"

Conn.CursorLocation = adUseClien '我加上了这行!!!

Rs.Open "select * from [user]", Conn, adOpenKeyset, adLockOptimistic '以上连接数据库,应该没什么问题

If Conn.State = adStateOpen Then

MsgBox "连接成功"

Else

MsgBox "连接失败"

End If

Set DataGrid1.DataSource = Rs

DataGrid1.Refresh

values = Rs.GetRows(, , "姓名") '取线路编号列的数据存入values数组中

For i = 0 To UBound(values, 2)

List1.AddItem values(0, i)

Next

'Rs.Close

'Conn.Close

End Sub

Function getFilePathName(dlgObj As Object, setFilter As String) As String

'添加 commondialog1

'On Error GoTo err

With dlgObj

.DialogTitle = "请指定文件夹"

.Filter = "文本文件(*." & setFilter & ")|*." & setFilter

.ShowOpen

getFilePathName = .FileName

End With

Exit Function

err:

MsgBox "您没有选择文件或者文件夹中没有" & setFilter & "文件"

End Function

............
崔冷之s5
2019-12-23 · TA获得超过772个赞
知道小有建树答主
回答量:881
采纳率:78%
帮助的人:85.5万
展开全部
使用 GetRows 方法将从 rdoResultset 中的一个或多个整行复制到一个二维数组。数组的第一维标识列,第二维指示行数,如下所示:
avarRows(intColumn)(intRow)
为了得到第二行的第一列,使用如下方法:
col1 = avarRows(0,1)为了得到第一行的第二列使用如下方法:col2 = avarRows(1,0)如果需要的行比可用的行还大,就只返回可用行使用 Ubound 确定实际可取得多少行,并根据返回的行数重新调整数组。例如,将结果返回到名为 varA 的 Variant 中,可以确定可实际返回多少行供使用:numReturned = Ubound(varA,2) + 1使用 "+ 1" 是因为返回的第一个数据是在数组的第 0 个元素中。可以取得的行数受限于可用的内存,应选用适合应用程序的行数-如果表很大不要希望使用 GetRows 将整个表或结果集都放入数组。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式