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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2010, 14:03   #11
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Цитата:
Уважаемый Terran а вы согли бы привести пример, а то не догнал.)
Цитата:
Вроде бы в основном разобрался, но с двумя клавишами так не получилосЬ?
К примеру возьмём GetKeyboardState. Пример использования:
Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
State : TKeyboardState;
begin
GetKeyboardState(State);
If ((State[vk_Control] and 128) <> 0) Then
caption:='нажат';
...
т.д.
End;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
State : TKeyboardState;
begin
GetKeyboardState(State);
If not ((State[vk_Control] and 128) <> 0) Then
caption:='отпущен';
...
т.д.
end;
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 18.05.2010, 19:55   #12
Dancewithevil
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 18
По умолчанию

128 это код клавиши как я полагаю?
Dancewithevil вне форума Ответить с цитированием
Старый 18.05.2010, 23:43   #13
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Цитата:
128 это код клавиши как я полагаю?
128 используется для упрощения работы с функцией. (Если интересует описание функции можете почитать тут: http://www.cyberguru.ru/programming/...ns-page10.html)
Код клавиш записывается в скобках [vk_Control]. Можно записать как [17].
В общем смысл такой. Используйте два обработчика событий FormKeyDown - на нажатие клавиш и FormKeyUp - на отпускание клавиш. И делайте проверки через If...Then состояния клавиш. Если клавиша нажата, то проигрывайте нужный звук, а если отпущена, то прекращайте воспроизведение.
Если будут затруднения, то выложите исходничёк. Постараемся помочь.
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 13.07.2010, 20:07   #14
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

Делать было нечего вчера, сделал что-то типа синтезатора (пока длина звука при нажатии статическая, позже сделаю цикл на воспроизведение середины звука, пока кнопка нажата и ограничение по времени тоже надо будет сделать думаю).
Клавиши:
" ` 1 2 3 4 5 6 7 8 9 0 - = q w e r t y u i o p [ ] \ ", ну и перемотка открытого трека <- и -> , пауза Pause/Break.

П.с. Для прекращения звука собираюсь использовать циклическое воспроизведение части/середины файла, потому что если прекращать проигрывать звук сразу после отпускания клавиши, без затухания, то получается не красиво.
Вложения
Тип файла: rar KVM.rar (6.63 Мб, 12 просмотров)

Последний раз редактировалось ZBEP; 13.07.2010 в 20:15.
ZBEP вне форума Ответить с цитированием
Старый 13.07.2010, 20:37   #15
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

>>> тырк 1 2
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 13.07.2010, 21:55   #16
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Тебя ждет еще одна проблема, и ее обойти не получится, т.к. она аппаратная. Ты не сможешь отловить нажатие более трех клавиш одновременно (может варьироваться от клавиш и клавиатуры).
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 13.07.2010, 23:52   #17
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

да эт фигово(
Но надеюсь точно-одновременных нажатий будет не оч много)
П.с.
Полутона добавил.

Подскажите, как можно записывать то, что я синтезаторе играю в файл?
Ищу про запись звука, но пока везде только запись с микрофона, а как записывать то, что в компе происходит - хз(
П.с.
У меня на клаве до 6 кнокок одновременно можно наживать (BTC) это радует)))

Последний раз редактировалось Stilet; 16.07.2010 в 12:22.
ZBEP вне форума Ответить с цитированием
Старый 16.07.2010, 12:19   #18
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Цитата:
Сообщение от ZBEP Посмотреть сообщение
Подскажите, как можно записывать то, что я синтезаторе играю в файл?
юзай bass, умеет захватывать выходной поток, и запись не сложная
ZuBy вне форума Ответить с цитированием
Старый 16.07.2010, 13:13   #19
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

Цитата:
Сообщение от ZuBy Посмотреть сообщение
юзай bass, умеет захватывать выходной поток, и запись не сложная
Ну я для звука ток им и пользуюсь, но до того как начал делать эту прогу - с ним не сталкивался.
Если не сложно, можешь поподробнее написать, про то, как с помощью bass перехватить выходной поток или ссыль дать если об этом уже где-то говорили)

П.с.
Седня нагуглил и скопипастил один способ, но он не bass' овский и какой-то слишком объемный и т.д.
Я думал будет примерно также, как запись с микрофона..
Ладн пойду изучать bass..

Блин.. Как я понимаю надо использовать BASS_RecordStart, понял как перехватывать инет-радио и сохранять его в файл, а насчет общего выходного потока пока ничего не нашел( Везде либо радио, либо микрофон XD

Последний раз редактировалось ZBEP; 16.07.2010 в 14:38.
ZBEP вне форума Ответить с цитированием
Старый 16.07.2010, 13:33   #20
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

С бассом идут примеры на Дельфи работы с его АПИ. Думаю среди них есть что тебе нужно.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с горячими клавишами Marsik Общие вопросы Delphi 10 26.02.2010 17:21
перемещение компанента клавишами include Общие вопросы Delphi 11 13.08.2009 12:43
Проблема с горячими клавишами InsaniaF Microsoft Office Word 4 21.05.2009 11:37
Движение обьекта клавишами в с++ Grizzzli Помощь студентам 2 05.04.2009 12:43
Перемещение кнопки клавишами Wolfic Помощь студентам 15 16.10.2007 17:41