- 138 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 23:05:09 ]
- MCI_OPEN_PARMS mop;
case WM_CREATE: mop = MCIOPEN(filename , MCI_DEVTYPE_SEQUENCER, hWnd); return 0; case WM_KEYDOWN: if(wp == VK_UP) mciSendCommand(mop.wDeviceID , MCI_PLAY , MCI_NOTIFY , (DWORD)&mop); else mciSendCommand(mop.wDeviceID , MCI_STOP , 0 , 0); return 0; case MM_MCINOTIFY: mciSendCommand(mop.wDeviceID , MCI_STOP , 0 , 0); mciSendCommand(mop.wDeviceID,MCI_SEEK,MCI_SEEK_TO_START,0); mciSendCommand(mop.wDeviceID , MCI_PLAY , MCI_NOTIFY , (DWORD)&mop); return 0; } 上記のような、midiファイルを↑キーで再生、他のキーで停止、曲の最後まで行ったらまた初めからループするプログラムを作ったのですが、 ↑以外のキーを押して曲を止めても、勝手に曲の初めから流れ始めます。 MCI_PLAYのMCI_NOTIFYを外してみると曲が止まったままにすることが出来たのですが、それだとループになりません。 ループするようにしたmidiを、停止することはできないのでしょうか?
|

|