Что нового

Возможно ли обработать выделенный текст?

ВиталийВВ

Новичок
Сообщения
177
Репутация
0
Добрый день.
А еще вопрос, есть ClipGet - Возвращает текст из буфера обмена. Но для обработки необходимо в буфер текст занести.
А вот возможно ли получить текст, который выделен, но еще не скопирован в буфер? (выделен чтоб был в любом месте!)
Т.е. типа есть некий длинный текст, состоящий из слов, по какому то слову два раза кликнул, оно выделилось, и чтоб я бы его могу уже получить и как то обрабатывать? (именно не копируя в буфер!)
 
Автор
В

ВиталийВВ

Новичок
Сообщения
177
Репутация
0
что то вроде последовательности:
- двойной клик по слову (мышкой, пользователь делает)
- выделение этого слова (это оно само происходит)
- копирование этого выделенного в буфер
- присвоение переменной значения буфера
Вот третий пункт - возможно ли реализовать?
 
Автор
В

ВиталийВВ

Новичок
Сообщения
177
Репутация
0
Подразумевается, что текст выделяется в любом из окон (ворд, блокнот, иное виндовское приложение)?
Причем, без указания идентификатора окна и поля
 
A

Alofa

Гость
Все как вы хотели:
Код:
#include <GuiEdit.au3>
#include 'MouseOnEvent.au3' ; UDF => http://autoit-script.ru/index.php?topic=198.0

Local $iToolTip
_MouseSetOnEvent_RI($MOUSE_PRIMARYDBLCLK_EVENT, '_DblClk_Event')

While Sleep(100)
	If $iToolTip Then
		$iToolTip += 1
		If $iToolTip = 15 Then
			ToolTip('')
			$iToolTip = 0
		EndIf
	EndIf
WEnd

Func _DblClk_Event()
	Sleep(100)
	Send('^{INS}')
	Local $sText = ClipGet()
	If $sText Then $iToolTip = ToolTip('[' & $sText & ']', Default, Default, 'Текст:', 1, 4)
EndFunc   ;==>_DblClk_Event

; ИЛИ (но работает не везде):

;~ Func _DblClk_Event()
;~ 	Sleep(200)
;~ 	Local $hControl, $aSel, $sText
;~ 	$hControl = ControlGetHandle('', '', '')
;~ 	If @error Then Return 0
;~ 	$aSel = _GUICtrlEdit_GetSel($hControl)
;~ 	$sText = StringLeft(StringTrimLeft(ControlGetText('', '', ''), $aSel[0]), $aSel[1] - $aSel[0])
;~ 	If $sText Then $iToolTip = ToolTip('[' & $sText & ']', Default, Default, 'Текст:', 1, 4)
;~ EndFunc   ;==>_DblClk_Event


А где ваши наработки? Что-то уже какая тема напоминает Стол Заказов.
 
Автор
В

ВиталийВВ

Новичок
Сообщения
177
Репутация
0
Ну уж не совсем уж стол заказов! Я же не просил полностью решить описанную проблему. В качестве наработок мог бы бы написать 1,2,4 шаги, но не был уверен в возможности реализации именно 3-го шага. Поэтому и создал тему.
За подробный ответ отдельное и огромное спасибо! Каждый раз чему то новому тут учусь :smile:
Ответом воспользовался, но перепилил его именно под свои нужды, взял самое основное.
Еще раз - огромное спасибо за ответ! :IL_AutoIt_1: Крайне помог в работе!
 
Верх