1

Тема: AHK: Окрашивание слова в определенный цвет

Здравствуйте.
Есть скрипт который при последовательном нажатии клавиш - запускает скрипт.
А само набранное слово при этом стирает.

Как изменить этот скрипт, чтобы он не стирал слово, а вместо запуска скрипта - окрашивал бы данное слово в синий цвет ?
Разумеется если набрать в блокноте это слово - то он ничего не покрасит, но вот если его набирать в ворде или экселе - то да.


:*:программа1:: 
Sleep, 500
   Run C:\1\tada.wav
   Return

2

Re: AHK: Окрашивание слова в определенный цвет

То-есть, все слова, которые нужно окрашивать, нужно будет прописать в скрипте? А если какое-то другое понадобится?
Бросьте, вручную проще.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Окрашивание слова в определенный цвет

teadrinker, мне там нужно всего три слова.

4

Re: AHK: Окрашивание слова в определенный цвет

Для Ворда так примерно:

#If WinActive("ahk_class OpusApp")
:*b0:программа1::
   try Word := ComObjActive("Word.Application")
   catch
      throw "Failed to get Word Application object"
   RegExMatch(A_ThisHotkey, "O)[^:]+$", m)
   end := Word.Selection.Start
   Rng := Word.ActiveDocument.Range(end - m.Len, end)
   Rng.Font.ColorIndex := wdBlue := 2
   Return
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: Окрашивание слова в определенный цвет

teadrinker А как для экселя это применить ?

Я вот так записал - не работает.

#If WinActive("ahk_class XLMAIN")
:*b0:программа1::
   try Excel := ComObjActive("Excel.Application")
   catch
      throw "Failed to get Excel Application object"
   RegExMatch(A_ThisHotkey, "O)[^:]+$", m)
   end := Excel.Selection.Start
   Rng := Excel.Activesheets.Range(end - m.Len, end)
   Rng.Font.ColorIndex := wdBlue := 2
   Return

6

Re: AHK: Окрашивание слова в определенный цвет

По Экселю не разбирался. Дерзайте: 1, 2.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: Окрашивание слова в определенный цвет

А вот в коде для ворда - там после окраски ключевого слова - можно как-нибудь цвет сделать обычным черным ?
Потому что ворд - так и продолжает печатать синим цветом.

8 (изменено: teadrinker, 2020-08-06 01:47:50)

Re: AHK: Окрашивание слова в определенный цвет

#If WinActive("ahk_class OpusApp")
:*b0:программа1::
   try Word := ComObjActive("Word.Application")
   catch
      throw "Failed to get Word Application object"
   RegExMatch(A_ThisHotkey, "O)[^:]+$", m)
   Sel := Word.Selection
   end := Sel.Start
   Rng := Word.ActiveDocument.Range(end - m.Len, end)
   Rng.Font.ColorIndex := wdBlue := 2
   Sel.Font.ColorIndex := wdBlack := 1
   Return
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

9

Re: AHK: Окрашивание слова в определенный цвет

teadrinker, Благодарю.
Теперь все нормально.