请问如何在MSHFlexGrid里只能选择一行?

ciscomcse 2004-06-24 08:52:21
我知道怎么样可以行的选择,但在选择了一行后用鼠标拖动却可以选择多行,有什么办法可以只选择一行?谢谢。
...全文
249 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
kinlin 2004-06-26
  • 打赏
  • 举报
回复
Option Explicit
Dim row1 As Long

Private Sub MSHFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Me.MSHFlexGrid1.Redraw = False
row1 = Me.MSHFlexGrid1.Row
End Sub
Private Sub MSHFlexGrid1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
Me.MSHFlexGrid1.Row = row1
Me.MSHFlexGrid1.ColSel = 0
Me.MSHFlexGrid1.ColSel = Me.MSHFlexGrid1.Cols - 1
Me.MSHFlexGrid1.Redraw = True
End Sub
csdnHelp 2004-06-26
  • 打赏
  • 举报
回复
我的没错!!!
Private Sub grdData_SelChange()
Me.grdData.RowSel = Me.grdData.Row
End Sub
啊呀 2004-06-25
  • 打赏
  • 举报
回复
如果只是为了显示数据表,觉得还是listview控件好
------------------------------------------------
mshflexgrid有个recordset属性,可以直接赋予记录集

想选单行就要写 .rowsel = .row 就行了
Snnywf888 2004-06-24
  • 打赏
  • 举报
回复
利用Redraw属性,鼠标按下时设为True抬起时设为False(谁是T谁是F记不清了,你调换一下试试),并记下按下时的行号,鼠标抬起时再赋回去
mylzw 2004-06-24
  • 打赏
  • 举报
回复
有个变通的方法,虽然鼠标拖动时还可以选择多行,但在鼠标放开后,当前行只会停留在选择的末尾行。
新建一工程,在Form1上放置一个MSHFlexGrid控件,然后粘贴以下代码至Form1:

Private Sub Form_Load()
With MSHFlexGrid1 '设置控件属性
.SelectionMode = flexSelectionByRow '选择模式为按行选择
.AllowBigSelection = False
.FocusRect = flexFocusNone
End With
End Sub

Private Sub MSHFlexGrid1_SelChange() '选择范围改变事件
With MSHFlexGrid1
.Row = .RowSel
.Col = 0
.ColSel = .Cols - 1
End With
End Sub
gaiwa 2004-06-24
  • 打赏
  • 举报
回复
这是控件问题,没法解决,建议采用其它网格控件
ciscomcse 2004-06-24
  • 打赏
  • 举报
回复
up
frankwong 2004-06-24
  • 打赏
  • 举报
回复
如果只是为了显示数据表,觉得还是listview控件好
射天狼 2004-06-24
  • 打赏
  • 举报
回复
Dim m_lngRowOld As Long

Private Sub MSHFlexGrid1_SelChange()
Dim i As Long, lngRowNew As Long

With MSHFlexGrid1
lngRowNew = .Row
For i = 1 To .Cols - 1
.Row = m_lngRowOld
.Col = i
.CellBackColor = vbWhite
.Row = lngRowNew
.CellBackColor = vbBlue
Next
m_lngRowOld = lngRowNew
End With
End Sub

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧