void __fastcall TMainBuilder::mnuWindow_LastVisitedClick(TObject *Sender)
{
const HWND hwnd = m_hLastActiveChild;
if (IsWindow(hwnd))
{
bool bmaximized;
HWND hwndactivechild = (HWND)SendMessage(g_hMDIClient, WM_MDIGETACTIVE, 0, (LPARAM)&bmaximized);
if (bmaximized)
{
SendMessage(g_hMDIClient, WM_MDINEXT, (WPARAM)GetWindow(hwnd, GW_HWNDPREV), 0);
}
else
{
if (IsIconic(hwnd))
ShowWindow(hwnd, SW_RESTORE);
else
SetWindowPos(hwnd, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE|SWP_SHOWWINDOW);
}
}
}

本文介绍了一个关于MDI应用程序中窗口切换与恢复的具体实现方法。通过使用Windows API函数,如IsWindow、IsIconic、ShowWindow等,该方法能够有效地处理最大化窗口的切换以及最小化窗口的还原等问题。
4364

被折叠的 条评论
为什么被折叠?



