BUG: MCIWndClass Popup Window Palette Flashes (121330)
The information in this article applies to:
- Microsoft Windows Software Development Kit (SDK) 3.1
- Microsoft Video for Windows 1.1
This article was previously published under Q121330 SYMPTOMS
An MCIWndClass popup window realizes its logical palette in the foreground
instead of the background as requested in a call to MCIWndRealize() with
the fBkgnd flag set to TRUE. The foreground palette realization is seen as
a flash.
The following code demonstrates the setting that results in the flash. The
flash occurs when the popup window receives the input focus from another
application using a different logical palette.
hwndPanel = MCIWndCreate(hwndParent, hInst,
MCIWNDF_NOAUTOSIZEMOVIE | MCIWNDF_NOMENU |
WS_OVERLAPPED | WS_BORDER | WS_CAPTION |
WS_SYSMENU | WS_POPUP, NULL);
MCIWndOpen(hwndPanel, fname, 0);
MCIWndRealize(hwndPanel, TRUE);
SetWindowPos(hwndPanel, HWND_TOP, X, Y, 0, 0,
SWP_NOSIZE | SWP_DRAWFRAME | SWP_SHOWWINDOW);
MCIWndPlay(hwndPanel);
CAUSE
When the MCIWndClass popup window receives the input focus from another
application that uses a different logical palette, the popup window
receives a WM_QUERYNEWPALETTE message that is processed for the popup
window by the MCIWndProc() procedure. In the MCIWndProc() procedure, the
"case WM_QUERYNEWPALETTE:" results in a call to MCIWndRealize() with the
flag fBkgnd set to FALSE. This occurs even if the popup window's palette
was originally realized in the background.
STATUS
Microsoft has confirmed this to be a bug in Microsoft Video for Windows
Version 1.1. We are researching this problem and will post new information
as it becomes available in the Microsoft Knowledge Base.
Modification Type: | Major | Last Reviewed: | 10/30/2003 |
---|
Keywords: | kbmm KB121330 |
---|
|