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

文本框中光标位置的获得-VB资料

HTML文档下载 WORD文档下载 PDF文档下载
文本框中光标位置的获得-VB资料
作者:陈锐
在很多的编辑软件中有这样一个功能,即当用户在编辑区中输入字符或者按动鼠标使得光标的位置改变时,在编辑软件下方的状态栏中就能显示出光标所在位置的行和列的值。下面就介绍如何用VB编程实现在文本框中的这一功能。
  首先,在Form中添加一个文本框(TextBox),将其MultiLine属性设置为True,以便输入多行文本;再在Form中添加两个标题栏(Label),以便显示光标位置;然后,在Form的代码窗口中添加程序中的代码。

Option Explici
Const EM_GETSEL = &HB0
Const EM_LINEFROMCHAR = &HC9
Const EM_LINEINDEX = &HBB

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Public Sub GetCaretPos(ByVal TextHwnd As Long, LineNo As Long, ColNo As Long)

Dim I As Long, j As Long
Dim lParam As Long, wParam As Long
Dim k As Long

'首先向文本框传递EM_GETSEL消息以获取从起始位置到
'光标所在位置的字符数

I = SendMessage(TextHwnd, EM_GETSEL, wParam, lParam)
j = I / 2 ^ 16

'再向文本框传递EM_LINEFROMCHAR消息根据获得的字符
'数确定光标以获取所在行数

LineNo = SendMessage(TextHwnd, EM_LINEFROMCHAR, j, 0)
LineNo = LineNo + 1

'向文本框传递EM_LINEINDEX消息以获取所在列数

k = SendMessage(TextHwnd, EM_LINEINDEX, -1, 0)
ColNo = j - k + 1
End Sub

Private Sub Form_Load()
Dim LineNo As Long, ColNo As Long

Call GetCaretPos(Text1.hwnd, LineNo, ColNo)
Label1.Caption = LineNo
Label2.Caption = ColNo
End Sub

Private Sub Form_Resize()
Text1.Width = Me.ScaleWidth
End Sub

Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
Dim LineNo As Long, ColNo As Long

Call GetCaretPos(Text1.hwnd, LineNo, ColNo)
Label1.Caption = LineNo
Label2.Caption = ColNo
End Sub

Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim LineNo As Long, ColNo As Long

Call GetCaretPos(Text1.hwnd, LineNo, ColNo)
Label1.Caption = LineNo
Label2.Caption = ColNo
End Sub

(程序)

  运行上面的程序,在TextBox中输入字符或者按控制键来移动光标时,你可以看到屏幕下面的Label中就能显示出的光标所在的位置。以上程序在Win 95,VB 5.0下运行通过。

not(elems)-JQuery API not(expr)-JQuery API not(el)-JQuery API parent(expr)-JQuery API parents(expr)-JQuery API prev(expr)-JQuery API siblings(expr)-JQuery API Events事件-JQuery API bind(type,data,fn)-JQuery API blur(fn) -JQuery API blur() -JQuery API change(fn) -JQuery API click(fn)-JQuery API click()-JQuery API dblclick(fn) -JQuery API error(fn) -JQuery API focus(fn)-JQuery API focus() -JQuery API hover(over,out)-JQuery API keydown(fn) -JQuery API keypress(fn)-JQuery API keyup(fn)-JQuery API load(fn)-JQuery API mousedown(fn)-JQuery API mousemove(fn)-JQuery API mouseout(fn)-JQuery API mouseover(fn)-JQuery API mouseup(fn)-JQuery API one(type,data,fn)-JQuery API ready(fn)-JQuery API resize(fn)-JQuery API 提问关于并发服务器。 关于jbuilder5开发EJB运行容器时的问题,跟帖都有分 请问怎样加一个位图作为Dialog的背景? 写dll链接时出错? 有谁知道windows屏幕保护的通用密码? 请教光标定位 如何使用PFXImportCertStore函数将.pfx文件注册到系统中啊! 有谁知道windows屏幕保护的通用密码 有关JSP运行的问题。分数多多 一个非常菜的问题! 如何利用socket截获80端口的数据? ji.ji.ji... 如何防止内存泄漏001 有谁知道windows屏幕保护的通用密码, xiaoxi777(小溪):请教你刚才的问题 有谁知道windows屏幕保护的通用密码,帮帮忙 在Unicode转换中,_T()与L到底怎么用,有什么区别? 关于利用QQ广告入侵 有没有深圳的阿,我快失业了,哪里要PB程序员啊 有谁知道windows系统的屏幕保护的通用密码 如何自动刷新网页?在线等待! 有谁知道window系统的屏幕保护的通用密码 怎样建设Java服务器?? 我用DELPHI打开了一个FOXPRO表,我想把FOX表的一个数字型字段(N.9.2)的一个数据(99.9)传给DELPHI中的一个变量,问这个变量是什么型的,是string,integer.? 请教Powerdesigner??? 一个ADO的问题,送上38分! 怎样在VB.NET中运行IE 在对话框显示时,怎样得到其位置? 上午62,下午54,有希望不? 关于串口打操作 一个关于InstallShield的小问题 本人朱小军,专门发帖子说有好东东,但是呢,每次都失信,各位,不要再相信我了。进来投一票吧。 关于串口的操作 如何在Delphi中调用函数StrTok? 那位大哥能否帮一下忙,详细告诉一下怎么安装fastreport,谢谢 请教一个 runtime的问题! 怎样使网页自动关闭且不出现提示框? double 和 str 如何转换? 如何将数据保存的二进制文件及如何读到及如何查询其中的数据??? 请教一个关于SQL语句的问题 高手请进,或许你知道 TechnoFantasy(www.applevb.com) 请进来取分,Taozc。 问大家一个基础问题? 怎么让FRAME启动时就为最大化的状态? 我想向各位高手请教关于对象序列化的问题! 现在很急,多谢各位! 如何获得像资源管理器上的桌面上的我的电脑,网上邻居等等 求救,关于打印机。 紧急!!!请教各位大虾: VC6上的MDI程序,我要在VC。net上运行,该怎么合理的修改?? 我也要《全套国标软件设计文档》,有谁收到了可以发一份给我吗?谢谢. mdb删除的问题,应该很简单吧 紧急求助,各位大虾: VC6上的MDI程序,我要在VC。net上运行,该怎么合理的修改?? 离子符号的书写氟离子 氢氧根离子 硝酸根离子 高锰酸根离子 氯酸根离子 碳酸氢根离子 两个镁离子用数字和符号怎么表示 讲解初三有关圆的知识 在氯化镁和氯化铝溶液中加氢氧化钠,先产生什么沉淀?是氢氧化镁还是氢氧化铝?请好心人士说仔细点. !“有一只质量为10g的瓶子,单独装满某种液体时,总质量为40g,单独装金属块时总质量为90g,先装入金属块,再加满液体,质量为100克,金属块的密度为8乘10的三次方千克/立方米.求液体的密度为? 不 用圆的知识解释井盖为什么是圆的 下列离子符号书写正确的是注:数字在右上角C.Al3+ D.So42-(4在右下角 2-在右上角) 一个瓶子装满水后称得瓶子和水的总质量为500g,若在瓶中投入金属块若干粒,称得溢水的质量为100克.此时剩余水瓶及金属块的总质量为670g.求金属块的密度呃,用公式求.其他答案我没看懂 浓硫酸与浓硝酸配成王水的比例是多少 50mlb摩尔每升氯化铝溶液中加50mla摩尔每升氢氧化钠溶液当ab满足什么条件a增大沉淀减少求氢氧化铝质量 向氯化铝溶液中滴加氢氧化钠溶液至过量,反应方程式 少量氨与氯化铝溶液反应能产生氢氧化铝沉淀吗? 如何找出离子符号的写法. 氢氧化铝和氢氧化钠的反应方程式 次氯酸,浓硝酸,浓硫酸,Cl2,王水,F2,那个氧化性强N和S的非金属性那个强次氯酸能和Cu反应吗方程式是什么 质量为68g的空瓶子,装满水后的总质量为184g,若先在瓶中放满煤油,煤油质量是多少?p油=0.8*10³kg/m³ 向Alcl3溶液中加入过量NaoH溶液的总反应方程式是什么 将氯化铝溶液和氢氧化钠溶液等体积混合,得到的沉淀物中铝元素的质量和溶液中铝元素的质量相等,试求原氯本题存在两个化学方程式:AlCl3+3NaOH=Al(OH)3+3NaClAl(OH)3+NaOH=NaAlO2+2H2O设:AlCl3和 质量为68g的空瓶子,装满水后的总质量的184g;若先在瓶中放入一个37.3g的金属块,然后再装满水,发现总质 王水是什么?请谈谈王水的化学原理及前沿应用. 为什么王水的酸性那么强?讲的越基础越好,2009-11-5 07:14回答的同学,我记得是盐酸和硝酸吧 质量为89g的空瓶子,装满水后总质量为184g,若先在瓶中放37.3g的一金属块,再装满质量为89g的空瓶子,装满水后总质量为184g,若先在瓶中放37.3g的一金属块,再装满总质量 128g,则瓶子容积为多 逆王水的原理是什么 瓶子为什么会瘪?矿泉水瓶子装了开水后.盖紧就会变瘪.这是为什么?为什么会变瘪? 质量68g瓶子,装满水后质量为184g,若在瓶中放入37.3g的金属块,再装水质量为184g,则此金属密度为( ) 每日c的那种塑料瓶子能装开水吗?经常看到有人这么装,有问题吗?瓶子会烫溶化漏水吗?我不是拿来喝的,是用来当暖水袋的 瓶子瘪了的教案 0.04mol氯化铝和0.16mol氢氧化钠混合 产生氢氧化铝沉淀多少克还有一个题向200ml0.1mol/l的naoh溶液中逐滴加入100ml0.1mol/l alcl3溶液 可得沉淀多少克 哪种塑料瓶子可以装开水? 怎样使瓶子变瘪? 一个瓶子装满水后的质量为190g,在瓶中放入一快质量为37.3g的金属片,称得总质量为224g,求该金属的密度? 大瓶午后红茶的瓶子能够装开水吗,这种塑料能够承受开水吗 为什么瓶子会变瘪?我把一个软矿泉水瓶中装了三分之一的水,然后把它放入冰箱,一段时间取出发现瓶子变瘪,瓶子为何会变瘪? 氢氧化铝沉淀中加入氢氧化钠溶液会生成四羟基合铝酸钠还是偏铝酸钠?二者有何不同?二者究竟有何不同呢? 塑料瓶子可以装开水喝吗?塑料的杯子和饮料瓶子可以装开水喝吗? 为什么瘪气球在瓶子里吹不大?行不. 烧碱加入氯化铝溶液中是生成简单的氢氧化铝沉淀还是生成较复杂的羟基铝,或者说生成氢氧化铝或羟基铝的条可是烧碱和氯化铝总能生成羟基铝啊,什么条件啊 王水化学式,化学名称是? 把碳酸钠溶液预氯化铝混合,产生的沉淀是氢氧化铝吗? 氢氧化铝和氢氧化钠反应到底生成四羟基合铝酸钠还是偏铝酸钠 向20ml某物质的量浓度的氯化铝溶液中滴加2mol/lNaOH溶液时,得到氢氧化铝沉淀质量与所滴加NaOH溶液的体积关系如图.(1)图中A点表示的意义(2)图中B点表示的意义(3)上述两步反应的总的离子方程式 用0.5N的力匀速拉动一块木块,和用0.8N匀速拉动同一块木块,请问木块两次受到的摩擦力相同吗?不是说物体处于平衡状态时,两边受力是相同的吗?照这么说用0.8N匀速拉动同一块木块时,木块受到 氯化铝与氢氧化钠反应化学方程式 一个空瓶装满水后质量为64克,装满酒精后质量为56克,咋空瓶的质量是多大?空瓶的容积是多少立方米?楼要完整的过程! 为什么将底部有孔的瓶子的盖子拧紧 怎样打化学符号离子?怎样在文档里打离子右上角的小字? 一个空瓶装满水后64Kg,装满酒精后质量为56Kg,求空瓶的质量和它的容积. 给瓶子里的水加热时,盖上盖子,是使瓶子里气压增大还是减小?1、水烧开后,盖上盖子,使瓶子里气压增大还是减小?2、为什么烧瓶中的水加热至沸腾,用橡皮塞塞紧瓶口,倒置瓶口,热水停止了沸 碳化学符号是什么? 请问过氧化钠与过量氯化铝反映的化学反应方程式, 为了是AlCl3溶液中的铝离子尽可能全部转化为Al(OH)3沉淀,最合适的试剂是 A.氢氧化钠溶液 B.KOH溶液C氨水 D盐酸 锌离子的化学符号? 镁离子正点符号前面的2含义是什么 要使硫酸铝溶液中的铝离子全部沉淀下来,适宜的试剂是A、盐酸B、氨水C、氢氧化钠D、二氧化碳 为什么在制备氢氧化铝时要向氯化铝溶液中滴入过量的氨水,为什么是过量的氨水? 2个镁离子的符号符号方式 用圆的知识解释一下瓶子的盖为什么是圆的? 滴加氨水溶液到氯化铝中至过量和滴加氯化铝溶液到氨水至过量是否是同一离子方程式?滴加2,3滴醋酸溶液到碳酸钠和碳酸钠2,3滴到醋酸是否是同一离子方程是?滴加氢氧化钡溶液到硫酸氢钠 镁离子的微粒符号怎么写 用圆的知识解释日常生活中,人们围观时为什么会自然地形成圆形呢?更好的加10.
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn