VSFlexGrid1中的刷新?
问题1:如何刷新?
(因为“编码”的值在随时发生变化,所以VSFlexGrid1中对应的图片也要随值而变化。)
我目前使用的方法是:再次调用所有代码SX(),请问有没有其他的刷新方法?
问题2:刷新后如何不改变焦点(光标)的位置?
(我用键盘的方向键在VSFlexGrid1表格上移动焦点(光标),如果我目前将焦点的位置停留在表格的某个位置上,刷新后能否不改变焦点的位置,依然停留在刚刚的位置上。)
Function sx()
Call hao
sql = "select * from www "
rs.Open sql, cn, 1, 1
While Not rs.EOF
VSFlexGrid1.Rows = VSFlexGrid1.Rows + 1
VSFlexGrid1.Row = VSFlexGrid1.Rows - 1
VSFlexGrid1.Col = 1
VSFlexGrid1.Text = rs( "编码 ")
'根据(rs( "编码 "))值在VSFlexGrid1中显示ImageList1控件对应的图片
Select Case Trim(rs( "编码 ")) VSFlexGrid1
Case "N "
Set VSFlexGrid1.CellPicture = ImageList1.ListImages(1).Picture
Case "Y "
Set VSFlexGrid1.CellPicture = ImageList1.ListImages(2).Picture
Case "O "
Set VSFlexGrid1.CellPicture = ImageList1.ListImages(3).Picture
End Select
rs.MoveNext
Wend
Call rong
End Function
[解决办法]
//问题2:刷新后如何不改变焦点(光标)的位置?
先记下光标的位置,刷新后移动到这个位置
[解决办法]
“我试过,用鼠标单击事件移动位置后记下光标的位置可以实现,但是怎样用键盘的方向键移动来实现呢?”
刷新前记录下选中的行和列,刷新后重新设置回去不就可以了
至于刷新,诚如楼上兄弟所说,如果只几个值改变了,就仅把那几个单元格的值修改就好了
[解决办法]
刷新前记录下选中的行和列,刷新后重新设置回去不就可以了??
不会出现这样的情况的,楼主是不是什么地方做的不到位。
想通过光标移动操作实现,这是可行的,对按键编程即可。