Page 1 of 1

Проверка на выделенный текст

Posted: 17 Mar 2021, 04:16
by MalefesO
Как сделать проверку на выделенный текст?
Нужно,чтобы мой скрипт запускался,когда выделиться какой-либо текст.
Если есть выделенный текст,то он запускает мою часть,если нет,то понятное дело ничего не воспроизводит.

Re: Проверка на выделенный текст

Posted: 17 Mar 2021, 16:43
by mcl
Пониятие выделенного текста полностью зависит от контекста. Например, в Notepad++ может быть выделено несколько кусков текста в разных местах, в Excel есть разница между текстом, выделенным в редактируемой ячейке, и выделенной ячейки с текстом, а в MSWord и браузерах выделять можно и форматированный текст, и изображения.

Работа с выделенным текстом явно прописана для нативных системных компонентов вроде текстового поля. Во многих других случаях, самым простым решением будет Ctrl+C:

Code: Select all

~*LButton Up::  ; для выделения мышкой
~^a::           ; для Ctrl+A
~*Right::       ; для выделения клавиатурой
~*Left::
~*Up::
~*Down::
	prevClip := ClipboardAll   ; сохраняем содержимое буфер обмена
	Clipboard := ""
	Send ^c
	ClipWait, 0.1
	selectedText := Clipboard  ; сохраняем выделенный текст в переменную
	Clipboard := prevClip      ; возвращаем прежнее содержимое
	
	TrayTip, Работаем с текстом, % selectedText ? selectedText : "<нет текста>"
	Return