请解释一下VB中的colsel是什么意思?

主要我不是很懂col=1,colsel=3与col=3,colsel=1的区别。
还有,为啥col=3,colsel=1排序的时候,是先依据第一列的内容排序,而不是先依据第三列呢?

ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。
RowSel — 为一定范围的单元格返回或设置的起始行和或终止行。
可以使用这些属性编程选择 MSHFlexGrid 的一个特定区域,或读出用户选择进入代码的区域的维数。

MSHFlexGrid 游标在 Row、Col 位置的单元格中。MSHFlexGrid 选择的是在行 Row 和 RowSel 之间以及列 Col 和 ColSel之间的区域。注意 RowSel 可能在 Row 的上面或下面,而 ColSel 可能在Col 的左边或右边。

无论什么时候设置 Row 和 Col 属性,RowSel 和 ColSel 都自动地重新设置,因此游标变为当前选择。要从代码中选择一块单元格,必须首先设置 Row 和 Col 属性,然后设置 RowSel 和 ColSel。

至于排序,应该是跟你的排序代码有关系
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-04-12

VB中的ColSel是指从表格控件返回或设置的起始列和或终止列。

    ColSel、RowSel 属性

    ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。

    RowSel — 为一定范围的单元格返回或设置的起始行和或终止行。

    ColSel 属性示例

    下面的代码把 ColSel 属性的 value 返回到 MSHFlexGrid1
    的第一单元格中。这个值随着用户单击不同的单元组的选择而更改。

    注意 如果正在使用
    MSFlexGrid,用“MSFlexGrid1”代替“MSHFlexGrid1”。

    Private Sub MSHFlexGrid1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)

        MSHFlexGrid1.Text = MSHFlexGrid1.ColSel

    End Sub

本回答被网友采纳
第2个回答  2015-10-05
ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。

语法
object.ColSel [= value]
object.RowSel [= value]
ColSel 和 RowSel 语法包含如下部分:
部分 描述
object 一个对象表达式(用来指定一个特定对象的表达式。这个表达式可以包括任何多个对象容器。例如,应用程序可以包含一个 Application 对象,这个Application 对象又包含一个 Document 对象,而这个 Document 对象又包含一个 Text 对象。),其值为“应用于”列表中的一个对象。
value 一个 Long值,为一定范围的单元格指定起始行或列,或者指定终止行或列。
摘自百度知道
第3个回答  2011-06-25
Private Oper_ID As Variant
Private Oper_Name As Variant
Private Oper_Pass As Variant

Private Sub IniFlexGrid(ByVal flexGrid As MSHFlexGrid) //这是建立FlexGrid表的一个过程(他的字段为编号,姓名,密码)

flexGrid.Clear
With flexGrid
.Cols = 4 //定义FlexGrid表列数为4行
.Rows = 2 //定义FlexGrid表行数为2行
.FixedCols = 0
.FixedRows = 1
.SelectionMode = flexSelectionByRow //定义表选择方式为整行选择
.TextMatrix(0, 1) = "编号" //插入头一个字段为编号

.TextMatrix(0, 2) = "姓名" //插入第二个字段为姓名

.TextMatrix(0, 3) = "密码" //插入第三个字段为密码

.ScrollBars = flexScrollBarVertical //表滚动条为垂直
.GridLines = flexGridNone //不显示分隔线
.GridLinesFixed = flexGridNone
'.AllowBigSelection = True
.AllowUserResizing = flexResizeNone

.ColWidth(0) = 1 //第一列宽度1像素
.ColWidth(1) = 1000 //第二列宽度1000像素
.ColWidth(2) = 2000 //第三列宽度2000像素
.ColWidth(3) = 3420 //第四列宽度3420像素
.ColAlignment(1) = 3
.ColAlignment(2) = 0
.ColAlignment(3) = 0
.ColAlignmentFixed(1) = 3

.FillStyle = flexFillSingle
.ScrollTrack = True
.Row = 1
.Col = 0
.RowSel = 1
.ColSel = .Cols - 1

End With

End Sub

请解释一下VB中的colsel是什么意思?
ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。RowSel — 为一定范围的单元格返回或设置的起始行和或终止行。可以使用这些属性编程选择 MSHFlexGrid 的一个特定区域,或读出用户选择进入代码的区域的维数。MSHFlexGrid 游标在 Row、Col 位置的单元格中。MSHFlexGrid 选择的是在行 Row 和 RowSe...

VB查询后,MSHFlexGrid如何自动选中第一行
ColSel属性,ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。实现代码:Private Sub Command1_Click() Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\\wd.mdb;Persist Security Info=False" Adodc1.RecordSource = "select * from ...

vb6.0 怎么在 MSFlexGrid1 中第三列和第四列之间插入一列?
ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。RowSel — 为一定范围的单元格返回或设置的起始行和或终止行。 可以使用这些属性编程选择 MSHFlexGrid 的一个特定区域,或读出用户选择进入代码的区域的维数,两者要配合用。3)TopRow 属性用于有很多行时,在有限的MSFlexGrid框架尺寸范围内,...

·vb MSFlexGrid 选中一行
                .Row  =  Row                 .ColSel  =  .Cols  -  1      ...

vb如何提取某一个数据表里的一条被选中的记录的一个字段
code='" & FmtCode & "' order by itemno",con for i=1 to rs.Rescordcount con.Excutxut(忘了什么了,好像是执行SQL的)"Insert Into fmttxt_item values('" & rs.Fileds("proj_code") & "...'" & text1(i) & "')"rs.movenext next i 另外,虚机团上产品团购,超级便宜 ...

vb中,如何判断MSHFlexGrid控件中显示记录被选取?
用循环 for i=0 to mshflexgrid1.rows-1 val=mshflexgrid1.TextMatrix(i, 你要判断的是哪一列,注意列是从零列开始的)if val=True then msgbox "现在选中的行是" & i 注意:这个VAL只是说用一个变量来确定你是否选择,布尔型的,可以用其它方法 ...

vb缺省控件有哪些
?ColSel 和 RowSel[= value ] 属性 返回或设置一群单元的起始或结束的行或者列。在设计时不可用。 在设置了 Row 和 Col 属性之后,会自动对 RowSel 和 ColSel 进行重置当前单元的值(由 Col 和 Row 的设置值所决定的),就是包含在那个单元中的文本。可以TextMatrix属性在不改变已选定的 Row 和 Col 属性的...

请教各位VB控件MSHFGIRD的详细属性说明
ColSel Array\/Long 设置\/返回某个范围单元的起始列ColWidth Array\/Long 设置\/返回某个列的宽度ColWordWrapOption Array\/Integer 设置\/返回网格的非固定单元是否允许WRAPColWordWrapOptionBand Array\/Integer 定义网格的BAND是否允许WRAPColWordWrapOptionFixed Array\/Integer 定义列的固定单元是否允许WRAPColWordWrapOption...

在Vb控件MSFLEXGRID中单元格字体的大小如何设置。某一行的字体大小又...
'设置某一行字体大小 MSFlexGrid1.FillStyle = flexFillRepeat '把更改应用到所有选定单元 MSFlexGrid1.Col = 1 MSFlexGrid1.Row = 1 MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1 '和col属性联用选中第1到第5列,MSFlexGrid1.CellFontSize = 10 '经过fillstyle设置效果应用到选定单元 ...

vb:mshflexgrid,选中行的问题。
.SetFocus .Row = .Rows - 2 .Col = 1 .ColSel = .Cols - 1

相似回答