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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2010, 09:46   #1
Dancewithevil
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 18
По умолчанию Занести Midi инструменты в ListBox

Здравствуйте. У меня возникла проблемка, при создании пианино на Delphi.
мне надо сделать так, чтобы все 128 инструментов Midi были занесены в ListBox. Вообщем я это сделал, но при выборе какого-нибудь инструмента, либо ничего не меняется, либо (я что-то накрутил) звук вообще исчезает.
Вот здесь мой код:
Код:
unit MainUnit;

interface
...
var
midi:integer;
      Midimsg :integer; // миди сообщение
       no :integer; // нота

        inst :integer; // инструмент

         Instruments:array [0..127] of String=(     //создаём массив 
'SimpePiano','BrightAcousticPiano','ElectricGrandPiano',
'HonkyTonkPiano','ElectricPiano1','ElectricPiano2','Harpsichord','Clavinet',
'Celesta','Glockenspiel','MusicBox','Vibraphone','Marimba','Xylophone',
'TubularBells','Dulcimer',
'DrawbarOrgan','PercussiveOrgan','RockOrgan','ChurchOrgan',
'ReedOrgan','Accordion','Harmonica','TangoAccordion',
'AcousticNylonGuitar','AcousticSteelGuitar','JazzElectricGuitar',
'CleanElectricGuitar','MutedElectricGuitar','OverdrivenGuitar',
'DistortionGuitar','GuitarHarmonics','AcousticBass',
'FingeredElectricBass','PickedElectricBass','FretlessBass',
'SlapBass1','SlapBass2','SynthBass1','SynthBass2',
'Violin','Viola','Cello','Contrabass',
'TremoloStrings','PizzicatoStrings','OrchestralHarp','Timpani',
'StringEnsemble1','StringEnsemble2','SynthStrings1',
'SynthStrings2','ChoirAahs','VoiceOohs','SynthVoice','OrchestraHit',
'Trumpet','Trombone','Tuba','MutedTrumpet','FrenchHorn',
'BrassSection','SynthBrass1','SynthBrass2',
'SopranoSax','AltoSax','TenorSax','BaritoneSax',
'Oboe','EnglishHorn','Bassoon','Clarinet',
'Piccolo','Flute','Recorder','PanFlute','BlownBottle',
'Shakuhachi','Whistle','Ocarina',
'SquareLead','SawtoothLead','CalliopeLead','ChiffLead',
'CharangLead','VoiceLead','FifthsLead','BassandLead',
'NewAgePad','WarmPad','PolySynthPad','ChoirPad',
'BowedPad','MetallicPad','HaloPad','SweepPad',
'SynthFXRain','SynthFXSoundtrack','SynthFXCrystal','SynthFXAtmosphere',
'SynthFXBrightness','SynthFXGoblins','SynthFXEchoes','SynthFXSciFi',
'Sitar','Banjo','Shamisen','Koto','Kalimba',
'Bagpipe','Fiddle','Shanai',
'TinkleBell','Agogo','SteelDrums','Woodblock',
'TaikoDrum','MelodicTom','SynthDrum','ReverseCymbal',
'GuitarFretNoise','BreathNoise','Seashore','BirdTweet',
'TelephoneSingle','Helicopter','Applause','GunShot);
....
procedure TMainForm.FormCreate(Sender: TObject);
begin
MidiOutOpen(@midi, 0,0,0,0); // подключаем миди

 MainForm.KeyPreview:=True;
....
For inst:=0 to 127 do
   begin
  ListBox1.Items.Add(Instruments[inst]); // забиваем список в ListBox
 end;
end;
....
//_______________сомневаюсь здесь!____________//
procedure TMainForm.ListBox1Click(Sender: TObject); 
begin
inst:=sListBox1.Items.IndexOf(ListBox1.Items.Text); // не уверен в этом!
 midimsg:=$C0+($100*inst); // отправляем изменённое звучание
midiOutShortMsg (midi, midimsg);
end;
....
Вообщем, вы поянли. Мне надо выбрать из списка допустим 'PercussiveOrgan' и играть им, но почему-то не работает. В чём моя ошибка, уверен, что в последней части. Заранее спасибо за помощь.)
Dancewithevil вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Case инструменты проектирования. Levsha100 Свободное общение 5 06.12.2009 03:12
Инструменты для начального изучения асс-ра Greynvi4 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 9 25.10.2009 14:29
Лицензия на инструменты разработки, при создании коммерческого ПО? Chrom Свободное общение 8 10.09.2009 00:17
Инструменты для Форума Принц HTML и CSS 7 28.05.2008 17:50
MIDI Shurik Hacker Компоненты Delphi 1 21.01.2008 13:54