!!!!SOS!!!!!VB中在用MSFLEXGRID和textbox实现电子表格编辑输入时遇到的问题?

gjlshining 2008-11-10 09:23:30
用MSFLEXGRID和textbox实现电子表格编辑输入时,实现了在表格中实现输入编辑等功能。目前的问题是当点击表格实现输入或者重新编辑时,表格中的文字会自动的向左对齐,输入完毕之后自动向右对齐(我的textbox设置的是右对齐,故输入完毕右对齐)。目前需要实现的是能不能在输入或者重新编辑时,表格文字不会自动的向左或者向右对齐,而是还是像普通的textbox控件输入文字一样,不改变格式,输入是什么就是什么呢.
先前我又尝试了用VB6.0 SP3里面有个microsoft forms 2.0 object library中的textbox,可以实现输入时不改变格式,不会重点突出或者实现自动向左对齐等现象,像普通textbox文本框输入文本一样,但是问题是这个textbox好像不能在msflexgrid单元上显示出来,真郁闷死了,恳请高手指点,我琢磨了一个下午,还是不能实现。谢谢了先!
...全文
345 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
gjlshining 2008-11-23
  • 打赏
  • 举报
回复
搞定了,原来是建立一个TEXT数组,模拟表格的方式进行。这样就可以达到先前我说提及的那种效果了,。不过还是十分感谢以上各位的热情回答!
gjlshining 2008-11-12
  • 打赏
  • 举报
回复
用了VXFLEXGRID好像还是和原先用MSFLEXGRID情况一样,还是会出现表格下沉等现象。
先前应用MSFLEXGRID和TEXTBOX结合的情况是当选择MSFLEXGRID某一单元的时候,你可以看的出来你选择了该单元,因为
有相应的虚线和表格单元里面文字格式会发生变化。我现在的意思是选中表格中某一单元,除了光标定位在该单元闪烁之外,其他的
都看不出来是选中了该单元,即选中单元文字格式不会变化,单元的边框也不会虚线显示。
真不知道怎么弄了,唉~~~~~郁闷啊
哪位大侠指点一下小弟哦,真的十分感谢!!!
熊孩子开学喽 2008-11-12
  • 打赏
  • 举报
回复
搞个图片看看,到底啥样子
熊孩子开学喽 2008-11-11
  • 打赏
  • 举报
回复
只要你把TEXTBOX和GRID的单元格大小,对齐方式,字体大小,都设成一至,那显示出来的效果就应该是一样的.
zhufenghappy 2008-11-11
  • 打赏
  • 举报
回复
用textbox显示在grid上单元格上就可以了,代码如下,txtInput是textbox
'************************************
'* 名称:msgCondition_MouseDown
'* 功能:
'* 作者: zhzhufeng
'* 参数:无
'* 描述:
'************************************
Private Sub msgCondition_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim i, j, index As Integer
With msgCondition
txtInput.Visible = False
If Button = 1 Then
If .col = 1 Then
' txtInput.Visible = False
txtInput.Width = .CellWidth
txtInput.Left = .Left + .CellLeft
txtInput.Top = .Top + .CellTop
txtInput.Height = .CellHeight
txtInput.Text = .Text
txtInput.SelStart = 0
txtInput.SelLength = Len(txtInput.Text)
txtInput.Visible = True
txtInput.ZOrder
txtInput.SetFocus
.ZOrder 1
End If
End If
End WithEnd Sub
CheeringSoft 2008-11-11
  • 打赏
  • 举报
回复
1,用VSFLEXGRID
2,在网上搜索一下mshflexgrid与textbox控件的捆绑使用
gjlshining 2008-11-11
  • 打赏
  • 举报
回复
首先,感谢楼上各位的热情回答,也谢谢版主能开办一个如此好的VB交流平台。
恩,是的,我的意思就是6楼兄弟说的那样表格不下沉。
不过我还没有用过VSFLEXGRID,不知道怎么添加。
在哪里可以添加啊??
zuoxingyu 2008-11-11
  • 打赏
  • 举报
回复
楼主的意思我明白了
就是编辑的时候,由于TEXTBOX放置到MSF上,然后就看到有边框下沉等现象

建议楼主去用VSFLEXGRID,非常强大的表格控件
gjlshining 2008-11-10
  • 打赏
  • 举报
回复
可能我的意思不是很清楚
再描述一下:
一般我们添加TEXTBOX空间时,程序运行时,点击textbox文本框,里面的文字格式不会变化,就是比如说原先textbox文本为右对齐,点击光标时他还是右对齐,不会改变格式,可以任意定位输入。
现在遇到的问题是
gjlshining 2008-11-10
  • 打赏
  • 举报
回复
说得简洁一点就是:
一般的textbox控件我们对其进行编辑时,比如原先的textbox.text= "姓名"
当光标点击该文本框时,里面的文字是不动的,光标定位在哪里就是哪里。
但是目前的问题就是当点击表格实现输入或者重新编辑时,表格单元中原有的文字会突出显示或者说是会动一下(比如自动的向左对齐或者向右对齐)输入完毕之后自动恢复原来的状态。目前需要实现的是能不能在输入或者重新编辑时,也能实现向输入到普通textbox里面一样,原先里面的内容不会动。光标任意定位~!!
zuoxingyu 2008-11-10
  • 打赏
  • 举报
回复
1:TEXTBOX默认是左对齐编辑的
2:MSFlexGrid1.CellAlignment = 3是居中
3:楼主的意思不是很明白

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧