·vb MSFlexGrid 选中一行

当鼠标中击某个框时,MSFLEXGRID就自动将对应的行用相对的颜色显示出来(感觉上去就是选中了这一整行)
MSFlexGrid1.ColSel = MSFlexGrid1.rows-1 好像不行啊
因为程序中重新定位过msflexgrid的col,好像用这方法不行。

Option  Explicit

Dim  LastRow  As  Long

Private  Sub  RowColor(ByVal  Row  As  Long,  Optional  t  As  Boolean)
        With  MSHFlexGrid1
                .FillStyle  =  flexFillRepeat
                .Col  =  1
                .Row  =  Row
                .ColSel  =  .Cols  -  1
                .RowSel  =  Row
                .CellBackColor  =  IIf(t,  vbWhite,  vbBlue)
        End  With
        LastRow  =  Row
End  Sub

Private  Sub  Form_Load()
        Me.Move  0,  0,  7935,  6615
        With  MSHFlexGrid1
                .Cols  =  8
                .Rows  =  25
                .Move  75,  75,  7620,  5910
        End  With
End  Sub

Private  Sub  MSHFlexGrid1_EnterCell()
        Dim  Row  As  Long,  Col  As  Long
        With  MSHFlexGrid1
                Row  =  .Row
                Col  =  .Col
                If  LastRow  Then
                        Call  RowColor(LastRow,  True)
                End  If
                Call  RowColor(.MouseRow)
                .Row  =  Row
                .Col  =  Col
        End  With
End  Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-11-07
右键选择msflexgrid的属性,在里面有一个选择方式,你选择按行选择就可以了
第2个回答  2008-11-08
设置SelectionMode值:

MSFlexGrid1.SelectionMode = flexSelectionByRow

VB查询后,MSHFlexGrid如何自动选中第一行
VB查询后可使用MSHFlexGrid控件的Row属性和ColSel属性达到自动选中第一行。Row属性,返回或设置 MSHFlexGrid 中活动单元的坐标。ColSel属性,ColSel — 为一定范围的单元格返回或设置的起始列和或终止列。实现代码:Private Sub Command1_Click() Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4...

vb用mshflexgrid表格显示数据,设定鼠标左键选定一行数据,但鼠标移到另...
(1)你每点一次需要将整个表的单元格背景色清空一次才能做到你要求的效果,这样太低效,不是好方法;可以使用多个TEXTBOX可实现,也就是你鼠标移动点击一行, TEXTBOX便可见并移动所选单元格的位置,从相应的单元格中读取数值到TEXTBOX中,TEXTBOX颜色随你怎么变都与表格无关了。比如,实现表格控件的单...

vb中msflexgrid控件单机如何改变某行背景颜色??请高手指点
首先,右键单击Msflexgrid,选择属性,打开属性页,然后在通用里面,把焦点区改成0 - None,选定模式改为1 - By Row,如图:这样你单击某个单元格,就会选中这一整行,而且选中的单元格不会有焦点框,不影响美观 然后,在Msflexgrid的Click事件里添加代码:'假设Msflexgrid的名字叫msGrid msGrid.BackC...

vb6.0 MSFlexGrid 怎么可以不用操作鼠标,而让某一行处于蓝色底色的选中...
1、可以使用键盘上的上下光标键在MSFlexGrid1_EnterCell()事件里实现。2、工具:vb6 3、示例:Private Sub Form_Load() MSFlexGrid1.Rows = 10 MSFlexGrid1.Cols = 5 MSFlexGrid1.Col = 0End SubPrivate Sub MSFlexGrid1_EnterCell() MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1 ...

·vb MSFlexGrid 选中一行
                .CellBackColor  =  IIf(t,  vbWhite,  vbBlue)        End  With         LastRow  =...

VB 中怎么使MSHFlexGrid1只能被选中一行
Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)x = MSFlexGrid1.Row For j = 0 To MSFlexGrid1.Rows - 1 MSFlexGrid1.Row = j For i = 0 To MSFlexGrid1.Cols - 1 MSFlexGrid1.Col = i MSFlexGrid1.CellBackColor = vbWhite ...

VB6.0中MSFlexGrid控件的用法
MsFlexGrid.Row=1 MsFlexGrid.Col=1 >>用粗体格式化当前选中单元 MsFlexGrid.CellFontBold=True >> 添加新的一行 使用AddItem方法,用Tab字符分开不同单元格的内容 dim row as string row=”AAA”&vbtab&”bbb”MsFlexFrid1.addItem row >>怎样来实现MSFlexGrid控件单数行背景为白色,双数的行背景为...

VB 6.0中使用msflexgrid控件,删除选中行
Private Sub Command1_Click()Dim rSel As Long With MSFlexGrid1 If .Rows = 0 Or .RowSel = 0 Then Exit Sub rSel = .RowSel If rSel <> .Rows - 1 Then For i = rSel + 1 To .Rows - 1 For j = 1 To .Cols - 1 .TextMatrix(i - 1, j) = .TextMatrix(i, j)Next Ne...

vb 6.0 vsflexgrid 判断鼠标点击哪一行
久不用VB了,以前用msflexgrid,有mouserrow属性.可以取得,还有mousecol

vb mshflexgrid 请问用代码怎么设置字体,字号!标头字体字号颜色怎么设 ...
'设置第一列,第一行 MSFlexGrid1.Row = 0 MSFlexGrid1.Col = 0 MSFlexGrid1.CellFontName = "宋体" '单元格字体 MSFlexGrid1.RowHeight(0) = 500 '行高 MSFlexGrid1.ColWidth(0) = 1000 '列宽 MSFlexGrid1.CellFontSize = 20 '字体大小 MSFlexGrid1.ForeColorFixed = &HFF...

相似回答