必须在点击时,标头出现小三角箭头的那种,类似outlook右侧的那个控件
但必须要有列和行的线!最好带个源码例子发到我邮箱。。感谢感谢[email protected]

解决方案 »

  1.   

    用ListView就行(注意是MicroSoft Windows Common Controls 6.0)
    至于三角图标:你在列表头添加图标就行 
    Sorted 属性(ListView 控件)
          返回或设置确定集合中的项目是否排序的值。语法object.Sorted [= boolean]Sorted 属性的语法包含下面部分:部分 描述 
    object 对象表达式,其值是“应用于”列表中的对象。 
    boolean 指定 ListItem 对象是否排序的布尔表达式,如“设置值”中所描述。 
    设置值boolean 的设置值为:设置值 描述 
    True 项目按字母顺序排序。对于ListView控件,根据 SortOrder 属性,项目按字母顺序排序。 
    False 列表项目不排序。 
    说明对于 ListView 控件,欲使 SortOrder 和 SortKey 属性的设置值生效,必须将 Sorted 属性设置为 True。每当 ListItem 坐标变更时 Sorted 属性将设置为 False。
     
    SortKey 属性(ListView 控件)
          返回或设置一个值,此值决定 ListView 控件中的 ListItem 对象如何排序。语法object.SortKey [= integer]SortKey 属性的语法包含下面部分:部分 描述 
    object 对象表达式,其值是 ListView 控件。 
    integer 指定排序关键字的整数,如“设置值”中所描述。 
    设置值integer 的设置值为:设置值 描述 
    0 使用 ListItem 对象的 Text 属性排序。 
    > 1 使用子项目排序,子项目的集合索引在此指定。 
    说明:在改变发生前,Sorted 属性必须设置为 True。通常希望单击列标头时将列表排序。所以,ColumnClick 事件通常包括 SortKey 属性并使用单击的列将列表排序,下面的示例演示了这一点:Private Sub ListView1_ColumnClick (ByVal ColumnHeader as ColumnHeader)
       ListView1.SortKey=ColumnHeader.Index-1
    End Sub 
    SortOrder 属性(ListView 控件)
          返回或设置一个值,此值决定 ListView 控件中的 ListItem 对象以升序或降序排序。语法object.SortOrder [= integer]SortOrder 属性的语法包含下面部分:部分 描述 
    object 对象表达式,其值是 ListView 控件。 
    integer 指定排序类型的整数,如“设置值”中所描述。 
    设置值integer 的设置值为:常数 值 描述 
    lvwAscending 0 (缺省)升序。从字母表首部 (A-Z) 或最早的日期开始排序。数字以字符串的形式排序,第一个数位决定排序的起始位置,其后的数位决定子排序。 
    LvwDescending 1 降序。从字母表尾部 (Z-A) 或最晚的日期开始排序。数字以字符串的形式排序,第一个数位决定排序的起始位置,其后的数位决定子排序。 
    说明根据 SortOrder 指定的顺序将列表排序之前,Sorted 属性必须设置为 True。
      

  2.   

    SortKey、SortOrder、Sorted 属性、ColumnClick 事件示例
    本示例将三个 ColumnHeader 对象添加到 ListView 控件中,并将 Biblio.mdb 数据库的 Publishers 记录植入控件。一个由两个 OptionButton 控件组成的数组提供将记录排序的两个选项。单击 ColumnHeader 将根据由 OptionButtons 决定的 SortOrder 属性将 ListView 控件排序。要试用此例,请将一个 ListView 和一个由 OptionButton 控件组成的控件数组放置在窗体上,并将代码粘贴到窗体的声明部分。运行示例并单击 ColumnHeaders 进行排序,单击 OptionButton 来切换 SortOrder 属性。注意 必须使用“工具”菜单的“引用”命令添加 Microsoft DAO 3.5 对象库的引用,否则示例无法运行。Private Sub Option1_Click(Index as Integer)
       '这些 OptionButtons 提供两种选择:升序(索引 0),
       '和降序(索引 1)。请单击其一
       '为 ListView 控件设置 SortOrder。
       ListView1.SortOrder = Index
       ListView1.Sorted = True '将列表排序。
    End SubPrivate Sub Form_Load()
       '为 ColumnHeader 对象创建对象变量。
       Dim clmX As ColumnHeader
       '添加 ColumnHeaders。列宽度等于控件宽度
       '除以 ColumnHeader 对象的数目。
       Set clmX = ListView1.ColumnHeaders. _
       Add(, , "Company", ListView1.Width / 3)
       Set clmX = ListView1.ColumnHeaders. _
       Add(, , "Address", ListView1.Width / 3)
       Set clmX = ListView1.ColumnHeaders. _
       Add(, , "Phone", ListView1.Width / 3)   ListView1.BorderStyle = ccFixedSingle '设置 BorderStyle 属性。
       ListView1.View = lvwReport '设置 View 属性为报表型。   '用 SortOrder 选项标注 OptionButton 控件。
          Option1(0).Caption = "Ascending (A-Z)"
          Option1(1).Caption = "Descending (Z-A)"
          ListView1.SortOrder = lvwAscending ' Sort ascending.   '为数据访问对象创建对象变量。
       Dim myDb As Database, myRs As Recordset
       '设置数据库为 BIBLIO.MDB 数据库。
       Set myDb = DBEngine.Workspaces(0).OpenDatabase("BIBLIO.MDB")
       '设置 recordset 为 Publishers 表。
       Set myRs = myDb.OpenRecordset("Publishers", dbOpenDynaset)
          
       '为添加 ListItem 对象创建变量。
       Dim itmX As ListItem   '若当前记录不是最后一条记录,则添加 ListItem 对象。
       'ListItem 对象的文本使用 Name 字段。
       'ListItem 对象的 subitem(1) 使用 Address 字段。
       'ListItem 对象的 subitem(2) 使用 Phone 字段。   While Not myRs.EOF
          Set itmX = ListView1.ListItems.Add(, , CStr(myRs!Name))      '若 Address 字段不为空,则设置 subitem 1 为此字段。
          If Not IsNull(myRs!Address) Then
             itmX.SubItems(1) = CStr(myRs!Address)  'Address 字段。
          End If      '若 Phone 字段不为空,则设置 subitem 2 为此字段。
          If Not IsNull(myRs!Telephone) Then
             itmX.SubItems(2) = myRs!Telephone  'Phone 字段。
          End If      myRs.MoveNext   '移动到下一条记录。
       Wend
    End SubPrivate Sub ListView1_ColumnClick(ByVal ColumnHeader As ColumnHeader)
       '单击 ColumnHeader 对象时,将根据
       '那一列的子项目把 ListView 控件排序。
       '设置 SortKey 为 ColumnHeader 的索引值减 1
       ListView1.SortKey = ColumnHeader.Index - 1
       '设置 Sorted 为 True 以将列表排序。
       ListView1.Sorted = True
    End Sub
      

  3.   

    用ListView就行
    http://member.netease.com/~kenj/download.htm
    ListView 的 API 效果演示
    利用 API 选择路径;取得文件的关联图标; ListView 的排序和过滤; ListView 的表头动态调整; ListView 的整行选择; ListView 的网格功能;  ListView 的平面表头; 改变ListView 表头字体; 设置ListView 表头图标;  改变ListView 的选择模式。 kenjLV1.zip (10K) 
      

  4.   

    发个源码吧。只要光ListView的。要有点击时,标头出现小三角箭头的那种。代码简洁的。不要参有其它功能的。。(我因为我才学,很难看懂,要有简单的源码调试最好。)所以有容易看懂的发一个吧。谢谢。。