Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/12: Рейтинг темы: голосов - 12, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 30.10.2008
Сообщений: 3

Как переслать в другое окно нажатую комбинацию клавиш?

30.10.2008, 12:48. Показов 2453. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сабж.
Заранее спасибо всем ответившим.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.10.2008, 12:48
Ответы с готовыми решениями:

Отследить нажатую комбинацию клавиш
Хочу написать для себя маленькую утилиту которая при копировании ссылки askfm.im/ххх будет автоматически заменять её в буфере на...

Как отправить в активное окно комбинацию клавиш Ctrl+T?
Как отправить в активное окно комбинацию клавиш Ctrl t ?

Отправить сочетание клавиш в другое окно
У меня есть игра, я хочу послать в активное окно игры клавиши ( 1 - 3 ) или же QQ ) : по таймеру в определенное время - подобие автокликер!...

16
IgorB
30.10.2008, 16:09
Read about 'Key_Down' and 'Key_Press' events in Help.
messer
30.10.2008, 20:01
Человек русским языком пишет в ДРУГОЕ окно...
Тебе нкжно использовать ф-цию API SendMessage
0 / 0 / 0
Регистрация: 30.10.2008
Сообщений: 3
31.10.2008, 13:54  [ТС]
А поподробнее можно, плиз, а то я в API не совсем силен. Заранее спасибо.
0
messer
31.10.2008, 20:37
Поподробней в и-нете миллион примеров.
Там не одну ф-цию нужно.Находиш дискриптор окна приемника.
или Находишь окно(API: FindWindow) посылает месадже (SendMessage) с параметрами
3 / 3 / 0
Регистрация: 16.01.2008
Сообщений: 359
02.11.2008, 11:36
или другой вариант, функция SendKeys
0
0 / 0 / 0
Регистрация: 26.06.2007
Сообщений: 59
05.11.2008, 11:32
Столько муры наотвечали, что никто не сможет выполнить поставленную задачу!!! А нельзя конкретно один раз, что бы поняли и малолетки?
0
3 / 3 / 0
Регистрация: 16.01.2008
Сообщений: 359
05.11.2008, 11:52
ну-у-у. слушай, может и программу за тебя написать....
тебе столько наводок дали.
кстати, хочешь конкретных примеров,ставь задачу конкретнее, что послать,кому,ково, и куда..
0
0 / 0 / 0
Регистрация: 30.10.2008
Сообщений: 3
05.11.2008, 13:04  [ТС]
Фишка в том, что из проекта VB надо закрыть ДОС-овское окно, послав туда некоторую комбинацию клавишь, например Alt+F10
0
0 / 0 / 0
Регистрация: 05.11.2008
Сообщений: 12
05.11.2008, 16:30
На счет SendKeys Вы батенька это зря. Человек спрашивает про окно Доса, какой такой SendKeys?
Можно попользовать keybd_event.
0
0 / 0 / 0
Регистрация: 05.11.2008
Сообщений: 12
06.11.2008, 10:48
To Timothy: keybd_event-это именно то, что надо. Работает 100%
0
3 / 3 / 0
Регистрация: 16.01.2008
Сообщений: 359
06.11.2008, 11:26
эй! народ, ну ка колитесь,что за event такой ! keybd_event
0
0 / 0 / 0
Регистрация: 05.11.2008
Сообщений: 12
06.11.2008, 12:08
API однако, имитирует нажатие клавиш
0
0 / 0 / 0
Регистрация: 25.06.2008
Сообщений: 129
06.11.2008, 20:21
a mozno mne prislat` primer s ispol`zovaniem keybd_event
Spasibo.
0
0 / 0 / 1
Регистрация: 24.03.2008
Сообщений: 20
08.11.2008, 20:59
Только не забывай, что окно, которому ты хочешь закинуть эти клавиши должо к тому моменту, когда ты эмулируешь нажатие клавишь, иметь фокус клавиатурного ввода. Тебе придется использовать функцию, которая может сделать активным окно другого потока (по отношению к вызываюему потоку). Вероятно подойдет SetForegroundWindow. После передачи фокуса ввода можно использовать функцию keybd_event. Где смотреть декларацию этих функций и описание работы? Дэн Апплман 'Win32 API for Visual Basic'. Там найдешь ответы на большинство вопросов. Если с англицким дружишь - в MSDN эти функции оч хорошо описаны.
0
0 / 0 / 1
Регистрация: 24.03.2008
Сообщений: 20
08.11.2008, 21:03
вот тебе пример:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Const VK_H = 72
Const VK_E = 69
Const VK_L = 76
Const VK_O = 79
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event Lib 'user32.dll' (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Form_KeyPress(KeyAscii As Integer)
    'Print the key on the form
    Me.Print Chr$(KeyAscii);
End Sub
Private Sub Form_Paint()
    'KPD-Team 2000
    'URL: [url]http://www.allapi.net/[/url]
    'E-Mail: [email]KPDTeam@Allapi.net[/email]
    'Clear the form
    Me.Cls
    keybd_event VK_H, 0, 0, 0   ' press H
    keybd_event VK_H, 0, KEYEVENTF_KEYUP, 0   ' release H
    keybd_event VK_E, 0, 0, 0  ' press E
    keybd_event VK_E, 0, KEYEVENTF_KEYUP, 0  ' release E
    keybd_event VK_L, 0, 0, 0  ' press L
    keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0  ' release L
    keybd_event VK_L, 0, 0, 0  ' press L
    keybd_event VK_L, 0, KEYEVENTF_KEYUP, 0  ' release L
    keybd_event VK_O, 0, 0, 0  ' press O
    keybd_event VK_O, 0, KEYEVENTF_KEYUP, 0  ' release O
End Sub
0
0 / 0 / 0
Регистрация: 05.11.2008
Сообщений: 12
09.11.2008, 00:34
И про аппаратные скан-коды клавиатуры не забыть. В примере они все 0, в Досе не пройдет.
...(тихо так) имхо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.11.2008, 00:34
Помогаю со студенческими работами здесь

Как записать комбинацию клавиш?
сем привет! Подскажите пожалуйста, как правильно записать комбинацию клавиш в таком методе?: public OnKey(Keys key) { ...

Как назначить комбинацию клавиш на button
Как прикрепить к button1 комбинацию ctrl+f ?

Как к кнопке Button привязать комбинацию клавиш?
Добрый день, озадачился тем, что нужно к кнопке привязать событие имитирующее нажатие комбинации клавиш (Cntr +) Как мне это сделать?

Как заставить программу считать комбинацию клавиш
Как заставить программу считать комбинацию клавиш(делаю прогу-тест и хочу добавить возможность читов(чтобы юзер нажал определенную...

Как программно задать комбинацию клавиш для вызова формы?
Как программно задать комбинацию клавиш для вызова формы?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru