Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2007, 19:06   #1
delphi_beginner
Пользователь
 
Регистрация: 24.02.2007
Сообщений: 22
Восклицание Эмуляция нажатия клавиши при отметке Checkbox

Есть 3 компонента Checkbox

Надо, чтобы при отметке 1-ого эмулировалось нажатие и удержание клавиши [

при отметке 2-ого эмулировалось нажатие и удержание клавиши ]

при отметке 3-его эмулировалось нажатие и удержание клавиши Alt

Большое спасибо заранее всем за любую оказанную помощь.
delphi_beginner вне форума Ответить с цитированием
Старый 01.06.2007, 19:22   #2
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Код:
procedure SetKeyState(const Code: Integer; b: Boolean);
var
  State: TKeyboardState;
begin
  ZeroMemory(Pointer(@State), SizeOf(State));
  GetKeyboardState(State);
    if (Byte(Ord(b)) <> KeyState[ACode]) then
     begin
           Keybd_event(Code, $45, KEYEVENTF_EXTENDEDKEY, 0);
           Keybd_event(Code, $45, KEYEVENTF_EXTENDEDKEY + KEYEVENTF_KEYUP, 0);
          KeyState[Code ] := Ord(b);
          SetKeyboardState(State);
     end;
end;

Code - код клавиши

В событии Checkbox.onchange
пиши SetKeyState(VK_ALT,checkbox.checked );

(для [ и ] ищи коды в справке)
Должно работать, но не знаю точно, написано "с листа"
пыщь
JTG вне форума Ответить с цитированием
Старый 01.06.2007, 20:12   #3
delphi_beginner
Пользователь
 
Регистрация: 24.02.2007
Сообщений: 22
По умолчанию

Не пашет. =(
delphi_beginner вне форума Ответить с цитированием
Старый 02.06.2007, 10:07   #4
Wolfheart
Любитель
Пользователь
 
Регистрация: 29.05.2007
Сообщений: 16
По умолчанию

Попробуй прописать в собитии Checkbox.OnClick

Keybd_event(VK_LMENU, 0, 0, 0);
Хочешь рассмешить Бога, расскажи ему о планах на завтра…
Wolfheart вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Эмуляция нажатия клавиши helenfly Win Api 9 01.12.2009 12:09
Эмуляция клавиши и БД Патрон БД в Delphi 7 20.11.2008 22:26
Эмуляция нажатия кнопки F3 Dimixis Помощь студентам 4 17.06.2007 23:42
Эмуляция нажатия клавиши...... Zoidberg Win Api 4 11.01.2007 18:44