说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

增加 MsFlexGrid 的编辑功能-VB资料

HTML文档下载 WORD文档下载 PDF文档下载
增加 MsFlexGrid 的编辑功能-VB资料

概述
MsFlexGrid 控件没有提供文本编辑的功能,下面的例子演示了如何利用一个TextBox 实现编辑当前网格的功能。

在按下一个键后, 就把TextBox 移动到当前的位置, 并激活。 在键入回车或移动到其他网格时, 就把TextBox 中的内容放到网格中。

实现步骤
1 打开 VB5, 开启一个新的工程。

2 在菜单“工程” 中选择 “部件”, 在列表中选中 “Microsoft FlexGrid Control ..”

3 放一个 MsFlexGrid 控件和一个TextBox 控件(Text1)到 Form1。 修改MsFlexGrid 控件的名称为 Grid1, 设置Grid1 的行,列 为 4, 固定行,列为 0。 设置 Text1 的 Visiable 为 False, BorderStyle 为 None(0)。

4 在Form1 的代码中增加声明:

Const ASC_ENTER = 13 '回车
Dim gRow As Integer
Dim gCol As Integer

5 增加代码到 Grid_KeyPress 过程:

Private Sub Grid1_KeyPress(KeyAscii As Integer)
' Move the text box to the current grid cell:
Text1.Top = Grid1.CellTop + Grid1.Top
Text1.Left = Grid1.CellLeft + Grid1.Left
' Save the position of the grids Row and Col for later:
gRow = Grid1.Row
gCol = Grid1.Col
' Make text box same size as current grid cell:
Text1.Width = Grid1.CellWidth - 2 * Screen.TwipsPerPixelX
Text1.Height = Grid1.CellHeight - 2 * Screen.TwipsPerPixelY
' Transfer the grid cell text:
Text1.Text = Grid1.Text
' Show the text box:
Text1.Visible = True
Text1.ZOrder 0 ' 把 Text1 放到最前面!
Text1.SetFocus
' Redirect this KeyPress event to the text box:
If KeyAscii <> ASC_ENTER Then
SendKeys Chr$(KeyAscii)
End If
End Sub

6 增加代码到 Text1_KeyPress 过程:

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = ASC_ENTER Then
Grid1.SetFocus ' Set focus back to grid, see Text_LostFocus.
KeyAscii = 0 ' Ignore this KeyPress.
End If
End Sub

7 增加代码到 Text1_LostFocus 过程:

Private Sub Text1_LostFocus()
Dim tmpRow As Integer
Dim tmpCol As Integer
' Save current settings of Grid Row and col. This is needed only if
' the focus is set somewhere else in the Grid.
tmpRow = Grid1.Row
tmpCol = Grid1.Col
' Set Row and Col back to what they were before Text1_LostFocus:
Grid1.Row = gRow
Grid1.Col = gCol
Grid1.Text = Text1.Text ' Transfer text back to grid.
Text1.SelStart = 0 ' Return caret to beginning.
Text1.Visible = False ' Disable text box.
' Return row and Col contents:
Grid1.Row = tmpRow
Grid1.Col = tmpCol
End Sub

8 好了。 按 F5 开始测试。 您可以自由地在 Grid 中移动, 按回车可以开始或结束编辑。

中国开源事业,路在何方? StackOverflow上的编程趋势 Oracle悄然将Berkeley DB许可证更改为AGPL 简单易用,保护隐私:麻省理工的邮件数据挖掘分析工具Immersion Microsoft Ventures进入中国,为云生态系统构建提供加速度! 这是场战争:盘点那些参与智能手表竞争的厂商 三星豪掷80万美元奖金 第二届全球开发者挑战赛开幕 MongoDB Map Reduce速度提升20倍的优化宝典 腾讯云总经理陈磊:可信任云服务背后的技术支撑力 “叫好不叫座”的石墨烯也许会给我们带来更清凉、更长寿的计算机 微软WPC 2013:Windows 8.1将于8月底提供给OEM合作伙伴 TIOBE 2013年7月编程语言排行榜:PHP强势回归 扁平化设计或成下一个流行趋势吗? 永生、登天、出唱片、开托儿所,IT大佬业余还玩什么? 终于盼来了:苹果iOS7 Beta 3、Xcode5预览版 可堆叠的创意 开源硬件Microduino开发团队专访 致任天堂的公开信:我想在iPhone上玩超级玛丽 为什么OpenStack被视为新的Linux? Netflix开源Pig可视化框架:Lipstick Tangle:一个开源的数据交互式JS库 云储存服务Dropbox用户达1.75亿 旨在同步而非保存 Windows Server 2012 R2里十个极好的新功能 走向台前的地图服务 彰显LBS应用的创新力量 调查显示:1/5的企业采用SDN技术 Chrome 28正式登陆Windows及Mac 成首个使用Blink内核的浏览器版本 不只是Chrome,Firefox也开始支持Web Audio API 验证HTML的5个原因和5个资源 微软WPC 2013:Office 365融合BI,Cloud OS加速,Intune折扣,SQL高版本数据库等 移动开发者走向全能开发者的五大技能 360和西部数码战略合作 一键开启为国内30万家网站提供免费安全服务 中兴携手英特尔发布基于X86的Geek手机 应用生态建设仍需努力 如何知道用户浏览我的主页时逗留的时间? 三峡工程改变了中国东部的气候 请教!ROSE中如何画组织图 问个简单的问题,如何利用子程序改变公共变量数组的值 如何在主页将数据库中内容实现动态公告? 我要买JDBC for SQL Server7.0的jar驱动,谢谢! 求《c++大学教程(第二版)》下载 如何取一个页所有控件的ID值啊! 我的WSAD 5.0的新建“数据库Web页面”,为什么“下一步”和“完成”都不能按?(详情请进!)请帮帮我! 机器被入侵,help 非常简单关于TreeView Control。的问题。喜欢大家帮忙, 求助 一个说易也不易的问题 cookie 只能已天为单位 来过期么? :( 30分钟就国旗 用什么? 请教高手 有些IE不能瀏覽flash文件﹐請問在哪有下載? 求购时间控件,用去web开发 如何才能按照分类显示视图的内容呢? 同志们 再见 接分! 再发一次,ie版本问题怎么解决,100分 请教:在Rational rose中如何去设计数据库表? 为什么wndows2k pro一访问windows2k server就有"打印机"和"任务计划"的共享,可不可以消除? win2k server下,iis5.0有问题,我想卸载,再重新安装,怎么做? treeview的使用小结(一) INDY 资料! 请分析这段代码,谢谢 怎样获得DataGrid的DataSource? 有关struts的问题,返回页面结果不对!在线等待,以解决就结帖 怎么改变快捷菜单PopupMenu1的颜色? 用OWC组件做柱状图,需要显示不同颜色的柱状以及显示不同颜色的图例 VS.NET中如何让自定义的事件出现在属性编辑器中? javascript 中有没有能返回指定某年某月中总天数的函数 如何将主窗体中的变量传到报表中,以供dataset查询用,急急急!!! 新手探路 不知道这是不是一个bug 函数返回值类型问题 兄弟我现在改行搞传统的邮政商业信函业务!给点建议!来者有分! 装有isa客户端的机器不能用FlashGet或者蚂蚁下载 网路多少钱才要交税? Kingofark关于英语及外语学习的50个观点 adotable定位记录有哪些方法?如何使用? 超高难度求sql语句,非高手莫进,在线等.......... petshop有些代碼不明白。。。。。。。。。。。 哎,运算符重载把我卡住了!求救!!! 最后 请问函数传递,设置默认值问题! 通过ODBC连接INFORMIX的问题!急!急!急! 有没有VC高手想在上海找工作? 求一个发送邮件的例子(急!!) 有谁碰到过多人同时改写几十个xml文件从而导致xml文件混乱的情况? 我在datawindow中设置initial vlaue=0,为什么写到数据库里的值还是null 什么是宾格?Shell will good ider thanks you take? ( )He seldom ____ fruit or vegetables now.A.eat B.are C.eats D.eating 寄一封信要多长时间? 如题:是不是寄到欧洲的信的邮价都是6快 有首歌里面有can you tell me,前面是中文一个男的唱得、特别好听.正确追加分数 文艺表演会上有20个节目,其中4个舞蹈,2个相声,3个小品,10只歌曲,一个乐器演奏.请你提出两个用百分并进行解答:1( )2( ) 蚂蚁搬家的情景,100字!~~急啊!~~ 正u和倒u组成的h是什么品牌 WHO.A.U是什么牌子呀,衣服怎么样,哪里有卖了. 如图所示,一质量为m的小球固定于轻质弹簧的一端,弹簧的另一端固定于O点处,将小球拉至A处,弹簧恰好无形变,由静止释放小球,它运动到O点正下方B点时速度为v,A、B两点间的竖直高度差为h,则 ,如图所示,以质量为m的小球固定在轻质弹簧的一端,弹簧的另一端固定于O处,将小球拉至A处.如图所示,一质量为m的小球固定于轻质弹簧的一端,弹簧的另一端固定在O点处,将小球拉至A点,弹簧恰 网友自制“2014节假日放假表” 比专家:中国九成以上大豆油是转基因产品委总统微博掉粉 谴责国际右翼势力插手汤加发生6.4级地震房租过高 白领伦敦上班巴塞罗那居住坐韩国口罩销售量激增 韩媒曾为中国雾霾克里无奈承认:有些监听活动太过头日海陆空“夺岛演习”规模空前 自卫队外媒称美国驻德国大使馆系间谍中心 可中央第二轮巡视10个巡视组全部进驻被法民众抗议“生态税” 与防暴警对峙【卧室灯具怎么布置?学学这5种布灯方式黄蜂慢热吞连败 主帅:打强队这样是挖百大影响力排行榜詹皇连续3年第一 库国外婚礼现场经典布置,让Party永鹅厂有望破群人数记录 万人空巷的日子深圳婚纱照细节问题该注意哪些让宋仲基告诉我们,有颜值有学历是一种杨百万:震荡上涨走势已明确,四月最后API只是幌子!EIA势必坚定看空,第23届CWMEE好博长沙医疗展即将电动车不限行政策终于落地,电动汽车买
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘