| |
|
|
| KompilierenMarkierenSeparierenSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Sound: Midi-Datei in einer Endlos-Schleife abspielen
declare x%,y%,Sound$,exit$,exit&,MidiDat&,j%,k%,e%,mididat$,a$,b$,ismidi%
x% = 120
y% = 90
j% = 25
k% = 5
PROC BEENDEN
clear ismidi%
@MCISEnd$(CLOSE MIDI)
e% = 1
ENDPROC
PROC MMFehler
Parameters Fehler$
MessageBox(Fehler$,MCI Fehler:,16)
MCISend$(CLOSE CLIP)
MCISEnd$(CLOSE MIDI)
BEENDEN
ENDPROC
PROC MIDI_PLAY
A$ = mididat$
A$=@ADD$(@ADD$(OPEN ,A$), TYPE SEQUENCER ALIAS MIDI)
B$=@MCISend$(A$)
If %MCIError
MMFehler B$
EndIf
B$=@MCISend$(PLAY MIDI NotiFy)
If %MCIError
MMFehler B$
EndIf
ismidi% = 1
ENDPROC
PROC MIDI_WAHL
EnableWindow %HWnd,0
mididat$ = LoadFile$(MIDI-Datei wählen,MIDI-Dateien (*.MID)|*.MID)
if mididat$ =
SetActiveWindow(%HWnd)
EnableWindow %HWnd,1
return
endif
@MCISEnd$(CLOSE MIDI)
SetActiveWindow(%HWnd)
EnableWindow %HWnd,1
MIDI_PLAY
ENDPROC
PROC FENSTER
Windowstyle 48
WindowTitle MIDI-Demo
Window %MaxX + (%MaxX - x%) / 2,(%MaxY - y%) / 2 - x%,y%
cls 0
UseFont Arial,16,0,0,0,0
SetDialogfont 1
SetTrueColor 1
MidiDat& = CreateButton(%HWnd,Midi wählen,5,5,Width(%HWnd) - 10,j%)
exit& = CreateButton(%HWnd,Beenden,5,5 + j% + k%,Width(%HWnd) - 10,j%)
SetWindowPos %HWnd = (%MaxX - x%) / 2,(%MaxY - y%) / 2 - x%,y%;-1
ENDPROC
#######################################################
FENSTER
mididat$ = MIDI_01.MID
MIDI_PLAY
SetTimer 500
whilenot e%
WaitInput
if %wmTimer
if ismidi%
ifnot @MCISend$(Status MIDI mode) = playing
MCISend$(CLOSE MIDI)
MIDI_PLAY
endif
endif
endif
if GetFocus(exit&)
BEENDEN
elseif GetFocus(MidiDat&)
MIDI_WAHL
endif
/../funktionsreferenzen/xprofan/wend/'>wend
end
|
|
|
| |
|
|