Форум: "WinAPI";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];
ВнизLingvo аналог... Найти похожие ветки
← →
Vasily Terekhov (2002-12-17 09:19) [0]1.Хочу аналогично лингво по горячей клавише поместить выделенный текст активного приложения в буфер (лучше просто получить этот текст не использую буфер, если возможно)
2.У меня есть текст, который я хочу вставить вместо выделенного текста активного приложения по горячей клавише.
p.s. горячию клавишу через хук я отслежу без проблем. вопрос непосредственно в получении выделенного текста и вставки вместо него своего текста в стороннем предложении.
← →
Slym (2002-12-17 11:06) [1]1. Ставишь приложению горячие клавиши
RegisterHotKey(Self.Handle,1,MOD_ALT,{Виртуальный код клавиши});
2. Пишешь обработчик на событие WM_HOTKEY
procedure WMHotkey(var msg:TMessage);message WM_HOTKEY;
в котором:
var s:PChar
...
hwnd:=GetFocus();
GetMem(s,256);
GetWindowText(hwnd,s,255);
//обработка строки S
SetWindowText(hwnd,s)
FreeMem(s,256);
3. На закрытии UnregisterHotKey(Self.Handle,1);
← →
Vasily Terekhov (2002-12-17 11:34) [2]угу
я так и пробовал
но GetFocus работает только в пределах приложения, вызвалшего это функцию. а мне надо получать и устонавливать текст у активного приложения. не обязательно в данный момент будет активно мое приложение!!!
← →
Song (2002-12-17 12:43) [3]Применяйте AttachThreadInput() чтобы сделать чужое приложение "как бы своим".
← →
Vasily Terekhov (2002-12-17 14:01) [4]угу
работае
толко не удается таким монером получить текст у редакторов (например у дельфовского редактора)...
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c