VB MSHflexgrid 问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 13:49:43
MSHflexgrid 绑定adodc1控件
现在有这样一个问题
adodc1绑定了数据库
MSHflexgrid显示的数据为
操作员 操作时间
张三 2009-7-3
李四 2009-1-11
…………

我现在鼠标随意的点击哪一行,整行获得焦点且背景色为蓝色,当我把这些数据清空的时候 再添加数据进去,不管怎么点哪一行 就再也无法获得焦点 背景也不能为蓝色。不知道什么原因。

请给出代码

两个MSHFLEXGRID控件,mshflexgrid1和mshflexgrid2,如何将mshflexgrid1的行的内容移动到mshflexgrid2并将该行删除,反之也成立。我写的代码只能实现把mshflexgrid1的行全部移动到mshflexgrid2,反之把mshflexgrid2的全部行可以移动到mshflexgrid1。但是当mshflexgrid1的内容不全部移动到mshflexgrid2时,也就是mshflexgrid1里还存在几行,mshflexgrid2里也有几行时,再把mshflexgrid2里的行移到mshflexgrid1里就出错了,从mshflexgrid2移到mshflexgrid1的行说覆盖了mshflexgrid1的行一行,后面以此类推,请问怎样解决这个问题?我的代码如下 :

'从mshflexgrid1到mshflexgrid2
Private Sub grid1togrid2_Click()
Dim i As Integer
For i = MSHFlexGrid2.Row To MSHFlexGrid2.Row
MSHFlexGrid2.RowHeight(MSHFlexGrid2.Row) = 255
MSHFlexGrid2.TextMatrix(i, 0) = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 0)
MSHFlexGrid2.TextMatrix(i, 1) = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 1)
MSHFlexGrid2.TextMatrix(i, 2) = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 2)
MSHFlexGrid2.TextMatrix(i, 3) = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 3)
If MSHFlexGrid1.Rows > 2 Then
MSHFlexGrid1.RemoveI