在MSFLEXGRID控件中每一个CELL格的内容是不可以由用户直接编辑的但是我们可以通过一些小技 巧来方便的实现这编辑功能来扩展MSFLEXGRID的应用(在实际应用中这是很常用的功能)。 你只需按下面的做即可轻松实现编辑MSFLEXGRID控件数据的功能 例在窗体上放一文本框text1,和一MSFLEXGRID控件flexgrid1 加入下例代码 Private Sub Form_Load() Text1.Move -10000, -10000, 1, 1 End SubPrivate Sub MSFlexGrid1_EnterCell() MSFlexGrid1.CellBackColor = vbBlue MSFlexGrid1.CellForeColor = vbWhite Text1.Text = MSFlexGrid1.Text Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End SubPrivate Sub MSFlexGrid1_LeaveCell() MSFlexGrid1.CellBackColor = vbWhite MSFlexGrid1.CellForeColor = vbBlue End SubPrivate Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single) Text1.SetFocus End SubPrivate Sub Text1_Change() MSFlexGrid1.Text = Text1.Text End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyLeft, vbKeyRight, vbKeyUp, vbKeyDown KeyCode = 0 End Select End Sub ok,这样一个可编辑的MSFLEXGRID控件就完成了,简单吧!!
o .你这个也是个可以尝试的好办法。。因为我只要求简单的修改即可。。 上面onlineboy兄给的控件到是很好玩。。不过刚下载了。。还没玩懂。。我试试先。。
http://junwhj.myrice.com/
巧来方便的实现这编辑功能来扩展MSFLEXGRID的应用(在实际应用中这是很常用的功能)。 你只需按下面的做即可轻松实现编辑MSFLEXGRID控件数据的功能 例在窗体上放一文本框text1,和一MSFLEXGRID控件flexgrid1
加入下例代码
Private Sub Form_Load()
Text1.Move -10000, -10000, 1, 1
End SubPrivate Sub MSFlexGrid1_EnterCell()
MSFlexGrid1.CellBackColor = vbBlue
MSFlexGrid1.CellForeColor = vbWhite
Text1.Text = MSFlexGrid1.Text
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End SubPrivate Sub MSFlexGrid1_LeaveCell()
MSFlexGrid1.CellBackColor = vbWhite
MSFlexGrid1.CellForeColor = vbBlue
End SubPrivate Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Text1.SetFocus
End SubPrivate Sub Text1_Change()
MSFlexGrid1.Text = Text1.Text
End SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyLeft, vbKeyRight, vbKeyUp, vbKeyDown
KeyCode = 0
End Select
End Sub
ok,这样一个可编辑的MSFLEXGRID控件就完成了,简单吧!!
上面onlineboy兄给的控件到是很好玩。。不过刚下载了。。还没玩懂。。我试试先。。
用 MSFLEXGRID +Textbox
MSFlexGrid1.CellBackColor = vbBlue
MSFlexGrid1.CellForeColor = vbWhite
复制到: MSFlexGrid1_MouseDown 事件里面会不会有什么影响?但是这样就可以实现第一次选择就把格子变成蓝色了。