找回密码
 加入
搜索
查看: 1949|回复: 3

[GUI管理] [已解决]如何在edit中按行号来选定一行文字?

[复制链接]
发表于 2012-2-7 21:55:48 | 显示全部楼层 |阅读模式
本帖最后由 my788522 于 2012-2-9 13:13 编辑



如图 按行号来选定某行全部文字
找了下richedit和edit udf 均未有发现或启发
其中的SetSel均需指定全部文字的开头与结尾序号
而一行文字的开头与结尾 似乎并不容易获取
求GUI达人指教为谢

已由A斑解决
For $i=0 To _GUICtrlEdit_GetLineCount($Edit)
$Len = StringLen(_GUICtrlEdit_GetLine($Edit, $i))
$iStart = _GUICtrlEdit_LineIndex($Edit, $i)
$iEnd = $iStart + $Len
_GUICtrlEdit_SetSel($Edit, $iStart, $iEnd)

If $i>10 then
_GUICtrlEdit_LineScroll($Edit, 0, 1)
EndIf
Sleep(1000)
Next

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2012-2-7 23:10:03 | 显示全部楼层
#include <GuiEdit.au3>

Local $iLine = 14        ;选择的行数
Local $text = RegRead('HKLM\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir') & '\readme.txt'
Local $Gui = GUICreate('Edit 选择行例子 By Afan', 500, 400)
Local $Edit = GUICtrlCreateEdit('', 1, 1, 498, 390)
GUISetState()
GUICtrlSetData($Edit, FileRead($text))
$Len = StringLen(_GUICtrlEdit_GetLine($Edit, $iLine))
$iStart = _GUICtrlEdit_LineIndex($Edit, $iLine)
$iEnd = $iStart + $Len
_GUICtrlEdit_SetSel($Edit, $iStart, $iEnd)

While GUIGetMsg() <> -3
WEnd
发表于 2012-2-8 00:38:00 | 显示全部楼层
路过学习....

话说回来, A版 的 Signature " Bye..." 有什么说法的吗?
呵呵, 好奇过头了!
发表于 2012-2-8 21:00:35 | 显示全部楼层
昨天搞了一晚上没搞出来
学习一下
话说_GUICtrlEdit_LineIndex帮助文档说明的不是很清楚呢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-19 15:30 , Processed in 0.074027 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表