![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как послать Сtrl+V приложению? [D6, Win95/98, Win2k]
FragMan © (2004-06-23 22:39:00)Не подскажите как программно послать приложению Microsoft Paint сочетание клавишь Сtrl+V ???
Желательно с примером! ПЛЗ!
Заранее благодарен
KSergey (2004-06-26 12:55:00) [1]> n0name (26.06.04 12:12) [12]
Ага, он скажет, что на пустые скобки компилятор ругается ;)
Инфы как послать сообщение окну другого приложения в инете - навалом. См. яндекс.
n0name (2004-06-26 12:12:00) [2]SendMessage(FindWinow(), WM_PASTE, 0, 0)
FragMan (2004-06-26 12:07:00) [3]Вот эти 2 предложения мне очень понравились, но только, как это всё ещё б приложению отправить!????
СПС: Ильичев С.А. © (24.06.04 22:07) [5]
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(VkKeyScan('v'), 0, 0, 0);
keybd_event(VkKeyScan('v'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
СПС: Ajax © (24.06.04 22:10) [6]
procedure EmulatePaste;
begin
keybd_event(VK_SHIFT,$2a,0,0);
keybd_event(VK_INSERT,$52,KEYEVENTF_EXTENDEDKEY,0);
keybd_event(VK_INSERT,$52,KEYEVENTF_KEYUP+KEYEVENTF_EXTENDEDKEY,0);
keybd_event(VK_SHIFT,$2a,KEYEVENTF_KEYUP,0);
end;
ПЛИЗ!!! надо это в Paint ещё отправить!!!
SendMessage('', WM_PASTE, 0, 0);
эта команда не подходит...
GetFocus
тоже не тянет...
!!!!!!!!! Х Е Л П!!!!!!!!!
Хочу из своей программы передавать картинки в PAINT и там их редактировать!!!
FragMan (2004-06-26 11:39:00) [4]Ну что рррррррррррррр то??? я ж прошу рассказать как это чудо работает... сейчас попробую этот GetFocus
DillerXX (2004-06-26 09:53:00) [5]рррррррррр
Если уж на то пошло, так указывай не кавычки, а GetFocus...
FragMan (2004-06-26 08:44:00) [6]Пишу вот такую команду:
SendMessage('', WM_PASTE, 0, 0);
а delphi соответственно ругается на '' эти ковычки! и пишет, что мол стринг и хэндл не совместимы... так вот вопрос!!!
как мне там в ковычках мона указать 'Безымянный - Paint' ? чтобы ошибка не вылетала!
FragMan (2004-06-26 07:54:00) [7]Хм... спасибо! Я понял! но приложению Paint как это сочетание клавишь отправить???
Ajax (2004-06-24 22:10:00) [8]Можно отловить окно программы которая нужна и выловленному hwnd послать wm_paste, но тут никакой гарантии - от программы зависит.
Нижеследующий код работает у меня везде (хотя гарантий тоже давать не буду)
procedure EmulatePaste;
begin
keybd_event(VK_SHIFT,$2a,0,0);
keybd_event(VK_INSERT,$52,KEYEVENTF_EXTENDEDKEY,0);
keybd_event(VK_INSERT,$52,KEYEVENTF_KEYUP+KEYEVENTF_EXTENDEDKEY,0);
keybd_event(VK_SHIFT,$2a,KEYEVENTF_KEYUP,0);
end;
Ильичев С.А. (2004-06-24 22:07:00) [9]
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(VkKeyScan('v'), 0, 0, 0);
keybd_event(VkKeyScan('v'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
GrayFace (2004-06-24 18:16:00) [10]Кажется, есть WM_PASTE.
Vac (2004-06-24 12:56:00) [11]Используй keybd_event и/или postmessage
в инете инфы полно, яндексом тебе никто не нанимался.
FragMan (2004-06-24 07:52:00) [12]Мдааа ... информациии просто завались :)
Помощь так и прёт
Спасибо :)
FragMan (2004-06-23 22:46:00) [13]Да! :) понимаю, что надо отправить определённому окну определённое сообщение с нажатием клавиши!
КАК это сделать?