就像TEXT一样???
解决方案 »
- 数值的转换问题,热心的朋友进来
- 谁有fm20.hlp 以及 Fm20.cnt 文件,发到我邮箱[email protected],收到后200分相送
- 如何在状态栏控件上显示滚动字幕
- 请教高手,DataGrid控件问题!
- 水晶报表9.2简体中文版下载
- 请问,VB6.0的SP5补丁应该安装在哪个文件下面?谢谢!
- 如何把一个表中的记录复制到另外一个表中?下面的代码可以吗?
- 一个关于filter的问题,,谁能帮我。。
- 关于输出到文本的小问题,52分!急!急!急!
- boyboy又要高分请教各位高手啦,100分喔,还不快进来看一看!
- 发现在使用if form1 is nothing then....时系统会调用form1的init事件,这一现象如何解释.
- 请问做这样一个项目,要多少钱合适
《利用微软网格控件进行编辑输入》程序清单
Private Sub Form_Load()
Show
End Sub'显示文本框
Sub ShowTextBox()
With MSFlexGrid1
'隐藏文本框,设置高度和宽度
Text1.Visible = False
Text1.Height = .RowHeight(.Row) - (Screen.TwipsPerPixelY) * 2
Text1.Width = .ColWidth(.Col)
' 计算文本框左坐标
Text1.Left = .CellLeft + .Left
Text1.Top = .CellTop + .Top
Text1.Visible = True
Text1.SetFocus
End With
End SubPrivate Sub MSFlexGrid1_KeyPress(KeyAscii As Integer)
Dim char As String
If KeyAscii = 13 Then
Text1.Text = MSFlexGrid1.Text
Text1.SelStart = Len(Text1.Text)
Else
char = Chr$(KeyAscii)
Text1.Text = char
Text1.SelStart = 1
End If
ShowTextBox
KeyAscii = 0
End Sub'离开网格时,进行处理. 如果第一列有内容,就自动加一行
Private Sub MSFlexGrid1_LeaveCell()
MSFlexGrid1.Text = Text1.Text
If MSFlexGrid1.Col = 0 And MSFlexGrid1.Row <> 0 And MSFlexGrid1.Row = MSFlexGrid1.Rows - 1 And MSFlexGrid1.Text <> "" Then
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
End If
End Sub
Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Text1.Visible = False
End SubPrivate Sub MSFlexGrid1_RowColChange()
Text1.Text = MSFlexGrid1.Text
End SubPrivate Sub MSFlexGrid1_DblClick() '双击可以对网格中内容进行编辑
If MSFlexGrid1.Row > 0 And MSFlexGrid1.Col > 0 Then MSFlexGrid1_KeyPress 13
End Sub'Text1是输入框,起模拟网格的作用,其实输入到文本框后,经过处理送到网格中
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
MSFlexGrid1.Text = Text1.Text
Text1.Visible = False
MSFlexGrid1.SetFocus
'输入完后如果按回车,若不是最后一列,自动到下一列
If MSFlexGrid1.Col < (MSFlexGrid1.Cols - 1) Then
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
'若为最后一列,跳转到下一行的第一列
ElseIf MSFlexGrid1.Row < MSFlexGrid1.Rows - 1 Then
MSFlexGrid1.Row = MSFlexGrid1.Row + 1
MSFlexGrid1.Col = 0
End If
KeyAscii = 0
End If
End Sub
在它的keypress事件中做处理