OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 19 Апрель, 2024 05:20

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Кода клавиш в ВВ...
СообщениеДобавлено: Понедельник, 24 Июль, 2006 14:29 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 12:00
Сообщения: 79
Откуда: Россия, Санкт-Петербург
Вот, возникла надобность симулировать нажатие клавишь Ctrl+A и Ctrl+C в программе.
В Делфе это пишеться так:
Код:
 keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0);
 keybd_event(Ord('C'), MapVirtualKey(Ord('C'), 0), 0, 0);
 keybd_event(Ord('C'), MapVirtualKey(Ord('C'), 0), KEYEVENTF_KEYUP, 0);
 keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0)

Что мне писать вместо VK_CONTROL, KEYEVENTF_KEYUP и KEYEVENTF_KEYUP в ВВ?

Смотрел модули MtChars, National и справку ВВ , но так и не понял :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кода клавиш в ВВ...
СообщениеДобавлено: Понедельник, 24 Июль, 2006 16:05 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Они определены в модуле WinApi:

VK_CONTROL = 17;
KEYEVENTF_KEYUP = {1};

PROCEDURE keybd_event (bVk, bScan: SHORTCHAR; dwFlags: SET; dwExtraInfo: INTEGER);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кода клавиш в ВВ...
СообщениеДобавлено: Понедельник, 24 Июль, 2006 16:20 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 12:00
Сообщения: 79
Откуда: Россия, Санкт-Петербург
Сергей Губанов писал(а):
Они определены в модуле WinApi


Да, определены... Но на такую запись
Код:
WinApi.keybd_event(WinApi.VK_CONTROL, WinApi.MapVirtualKey(WinApi.VK_CONTROL, 0), 0, 0);
WinApi.keybd_event(ORD('C'), WinApi.MapVirtualKey(ORD('C'), 0), 0, 0);
WinApi.keybd_event(ORD('C'), WinApi.MapVirtualKey(ORD('C'), 0), WinApi.KEYEVENTF_KEYUP, 0);          
WinApi.keybd_event(WinApi.VK_CONTROL, WinApi.MapVirtualKey(WinApi.VK_CONTROL, 0), WinApi.KEYEVENTF_KEYUP, 0)

у меня сплошные "incompatible assignment" :( Что я не так делаю?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кода клавиш в ВВ...
СообщениеДобавлено: Понедельник, 24 Июль, 2006 17:01 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Надо так:

WinApi.keybd_event(SHORT(CHR(WinApi.VK_CONTROL)), SHORT(CHR(WinApi.MapVirtualKey(WinApi.VK_CONTROL, 0))), {}, 0);
WinApi.keybd_event('C', SHORT(CHR(WinApi.MapVirtualKey(ORD('C'), 0))), {}, 0);
WinApi.keybd_event('C', SHORT(CHR(WinApi.MapVirtualKey(ORD('C'), 0))), WinApi.KEYEVENTF_KEYUP, 0);
WinApi.keybd_event(SHORT(CHR(WinApi.VK_CONTROL)), SHORT(CHR(WinApi.MapVirtualKey(WinApi.VK_CONTROL, 0))), WinApi.KEYEVENTF_KEYUP, 0)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 24 Июль, 2006 17:13 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 12:00
Сообщения: 79
Откуда: Россия, Санкт-Петербург
Спасибо! Работает.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB