Office中国论坛/Access中国论坛

标题: 如何用代码获得列表框任意列的标题? [打印本页]

作者: qlm    时间: 2006-9-6 03:09
标题: 如何用代码获得列表框任意列的标题?
有两个问题:

1、列表框或组合框的标题其实就是源表的字段名。假如我有一个列表框,显示多列字段数据,

我想用代码获得任意列的字段名,就该怎么实现?



2、列表框的标题能否居中显示?一般默认是左对齐(如下图):

  

[attach]20170[/attach]


恳请高手们指教!
作者: sgrshh29    时间: 2006-9-6 14:11
要获取某个列名,先行绑定该列并且显示列名,然后用itemdata(0)取得列名.如果需要列名居中,请改用listview控件.

[此贴子已经被作者于2006-9-6 6:38:33编辑过]


作者: zyz218    时间: 2006-9-6 20:00
Private Sub Lst3_AfterUpdate()
    社员ID.SetFocus
    DoCmd.FindRecord Lst3, , , acSearchAll

End Sub
作者: andymark    时间: 2006-9-6 20:01
获取列表框所有列名

Dim i As Integer
For i = 0 To List0.ColumnCount - 1
Debug.Print List0.ItemData(i)
Next i
作者: qlm    时间: 2006-9-6 20:44
昨天贴了2个问题,今天都得到满意的答案。

太感谢你们了,热心的朋友们!!

sgrshh29的方法可以得到列名,但必须动态改变绑定列。

andymark的方法我比较喜欢,但是只能得到第一列的列名,看来是一定要绑定列了。

zyz218的方法有什么作用,我暂时看不懂。

如下:

Private Sub Command6_Click()
List0.BoundColumn = 1
Text2 = List0.ItemData(0)
List0.BoundColumn = 2
Text4 = List0.ItemData(0)
List0.BoundColumn = 3
Text5 = List0.ItemData(0)
End Sub

Private Sub Command7_Click()
DoCmd.FindRecord List0, , , acSearchAll
End Sub

Private Sub Command8_Click()
List0.BoundColumn = 1
Dim i As Integer
For i = 0 To List0.ColumnCount - 1
Debug.Print List0.ItemData(i)
Next i
End Sub




[此贴子已经被作者于2006-9-6 12:57:23编辑过]


作者: zyz218    时间: 2006-9-6 21:29
[attach]20178[/attach]


看来是我理解错了楼主的意思! *^_^*  呵呵

[此贴子已经被作者于2006-9-6 13:41:57编辑过]


作者: andymark    时间: 2006-9-6 21:40
以下是引用qlm在2006-9-6 12:44:00的发言:


昨天贴了2个问题,今天都得到满意的答案。

太感谢你们了,热心的朋友们!!

sgrshh29的方法可以得到列名,但必须动态改变绑定列。

andymark的方法我比较喜欢,但是只能得到第一列的列名,看来是一定要绑定列了。

      列表框的行来源是表/查询的,可以不用绑定列标题

       Dim Sql As String
       Dim Rsc As New ADODB.Recordset
       Dim i As Integer
      Sql = Me.List1.RowSource

     Rsc.Open Sql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
     For i = 0 To Rsc.Fields.Count - 1
          Debug.Print Rsc.Fields(i).Name
    Next i
   Set Rsc = Nothing
作者: qlm    时间: 2006-9-6 21:47
你们知道的真多。谢谢!
作者: tangnou    时间: 2006-11-25 08:22
很好呀。






欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3