正文

加强型的 MSFlexGrid 12005-07-22 13:08:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/leafage/3082.html

分享到:

加强型的 MSFlexGrid 来源:cww 更改王国荣的范例 修改过王国荣先生的范後,功能如下: 1.在MSFlexGrid上按Enter时,可以编修当格(Current Cell)的内容 2.在MSFlexGrid上Click时,可以编修当格(Current Cell)的内容 3.在MSFlexGrid上固定列与固定行上面按Mouse右键时可以修改其Title 4.允许MultiLine/MultiCol的Selection 与按Ctl-Mouse左键的MultiSelect Columns 5.进入Cell的EditMode时,按up/Down键会离开Current Cell而进入上/下 一行的Cell 6.进入Cell的EditMode时,按Escape回覆原本的字串 MSFlexGrid内的资料原本是不能让使用者直接KeyIn的,所以找个变通的方式,便是使用 TextBox来Keyin,再把TextBox内的值放入MSFlexGrid中,但重点就变成TextBox如何设 定位置、大小於MSFlexGrid之上。这个部份在toEditGrid的程式中做。何时启动TextBox 让之可以输入资料呢,有两个地方,一个在MSFlexGrid上的Mouse_Click,而且考虑可以 在Grid上做多栏的选取,所以只有在.ColSel = .Col And .RowSel = .Row时才可以进入 EditMode。另一个地方在MSFlexGrid上按Enter,也会令之进入EditMode。而离开EditMode 的时机在於TextBox上按Enter/Up/Down/Esc 键。 另外,我们如果想要保留MSFlexGrid可以整列整行选取,而且又可以更动MSFlexGrid最 上与最左边的固定列之Title,我的做法是,在MSFlexGrid上MouseUp时来判定Mouse所在 的Col与Row,如果MouseCol=0 or MouseRow = 0代表是在FixedCol/FixedRow 上按下 Mouse,如果按的是右键表示要修改FixCol或FixRow的Title,如果是左键,那不做任何 处理,此时,如果AllowBigSelection=True时,则会选取整行或整列。'

阅读(2993) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册