MSFlexGrid编辑VB6
发布时间:2020-12-15 01:47:13 所属栏目:百科 来源:网络整理
导读:目前我正在研究vb6应用程序.我想在MSFlexgrid中显示数据但是MSFlexgrid控件中没有编辑工具. 有没有办法编辑MSFlexgrid? 解决方法 有一种使用隐藏文本框的方法.在双击单元格时,文本框将可见,编辑可以在这里进行代码片段检查 Private Sub Form_Load() 'Settin
目前我正在研究vb6应用程序.我想在MSFlexgrid中显示数据但是MSFlexgrid控件中没有编辑工具.
有没有办法编辑MSFlexgrid? 解决方法
有一种使用隐藏文本框的方法.在双击单元格时,文本框将可见,编辑可以在这里进行代码片段检查
Private Sub Form_Load() 'Setting Col And row MSFlexGrid1.Cols = 3 MSFlexGrid1.Rows = 10 'First row MSFlexGrid1.TextMatrix(0,0) = "ID" MSFlexGrid1.TextMatrix(0,1) = "Date" MSFlexGrid1.TextMatrix(0,2) = "Voucher Type" 'some data MSFlexGrid1.TextMatrix(1,0) = "E0000001" MSFlexGrid1.TextMatrix(2,0) = "E0000001" MSFlexGrid1.TextMatrix(1,1) = "01/04/10" MSFlexGrid1.TextMatrix(2,1) = "01/04/10" MSFlexGrid1.TextMatrix(1,2) = "Jrnl" MSFlexGrid1.TextMatrix(2,2) = "Jrnl" End Sub Private Sub MSFlexGrid1_DblClick() 'If MSFlexGrid1.Col = 3 Or MSFlexGrid1.Col = 6 Or MSFlexGrid1.Col = 7 Then GridEdit Asc(" ") 'End If End Sub Private Sub MSFlexGrid1_KeyPress(KeyAscii As Integer) GridEdit KeyAscii End Sub Sub GridEdit(KeyAscii As Integer) 'use correct font Text1.FontName = MSFlexGrid1.FontName Text1.FontSize = MSFlexGrid1.FontSize Select Case KeyAscii Case 0 To Asc(" ") Text1 = MSFlexGrid1 Text1.text = Trim(Text1.text) Text1.SelStart = 1000 Case Else Text1 = MSFlexGrid1 Text1.text = Trim(Text1.text) Text1.SelStart = 1000 End Select 'position the edit box Text1.Left = MSFlexGrid1.CellLeft + MSFlexGrid1.Left Text1.Top = MSFlexGrid1.CellTop + MSFlexGrid1.Top Text1.Width = MSFlexGrid1.CellWidth Text1.Height = MSFlexGrid1.CellHeight Text1.Visible = True Text1.SetFocus End Sub Private Sub MSFlexGrid1_LeaveCell() If Text1.Visible Then If MSFlexGrid1.Col = 6 Or MSFlexGrid1.Col = 7 Then If Text1.text = "" Then Text1.text = " " End If End If MSFlexGrid1 = Text1 Text1.Visible = False End If End Sub Private Sub MSFlexGrid1_GotFocus() If Text1.Visible Then If MSFlexGrid1.Col = 6 Or MSFlexGrid1.Col = 7 Then If Text1.text = "" Then Text1.text = " " End If End If MSFlexGrid1 = Text1.text Text1.Visible = False End If End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) 'noise suppression If MSFlexGrid1.Col <> 6 And MSFlexGrid1.Col <> 7 Then KeyAscii = 0 End If If KeyAscii = vbKeyReturn Then KeyAscii = 0 End If End Sub (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |