|
Pausing and Resuming Playback
You can interrupt playback of a device or file associated with an MCIWnd
window by using the MCIWndPause macro. You can then restart playback by using the MCIWndResume macro. If the device does not support resume or if an error occurs, you can
use the MCIWndPlay macro to restart playback.
The following example creates an MCIWnd window and plays an AVI file. Pause
and resume menu commands are available to the user to interrupt and restart
playback.
MCIWnd window styles are changed temporarily by using the MCIWndChangeStyles macro to inhibit an MCI error dialog box from being displayed if MCIWndResume fails.
case WM_COMMAND:
switch (wParam)
{
case IDM_CREATEMCIWND: // creates and plays clip
g_hwndMCIWnd = MCIWndCreate(hwnd,
g_hinst,
WS_CHILD | WS_VISIBLE | // standard styles
MCIWNDF_NOPLAYBAR | // hides toolbar
MCIWNDF_NOTIFYMODE, // notifies of mode changes
"sample.avi");
MCIWndPlay(g_hwndMCIWnd);
break;
case IDM_PAUSEMCIWND: // pauses playback
MCIWndPause(g_hwndMCIWnd);
MessageBox(hwnd, "MCIWnd", "Pausing Playback", MB_OK);
break;
case IDM_RESUMEMCIWND: // resumes playback
MCIWndChangeStyles( // hides error dialog messages
g_hwndMCIWnd, // MCIWnd window
MCIWNDF_NOERRORDLG, // mask of style to change
MCIWNDF_NOERRORDLG); // suppresses MCI error dialogs
lResult = MCIWndResume(g_hwndMCIWnd);
if(lResult){ // device doesn't resume
MessageBox(hwnd, "MCIWnd",
"Resume with Stop and Play", MB_OK);
MCIWndStop(g_hwndMCIWnd);
MCIWndPlay(g_hwndMCIWnd);
MCIWndChangeStyles( // resumes original styles
g_hwndMCIWnd,
MCIWNDF_NOERRORDLG,
NULL);
}
break;
}
break;
// Handle other messages here.
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
More Online Helps
Win32 Programmer's Reference (win32.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|