共用方式為


CWnd::FindWindow

傳回 lpszClassName 寫入,且視窗名稱或標頭, lpszWindowName將視窗類別的最上層 CWnd

static CWnd* PASCAL FindWindow(
   LPCTSTR lpszClassName,
   LPCTSTR lpszWindowName 
);

參數

  • lpszClassName
    為指定的視窗類別名稱的 NULL 結尾字串的點 ( WNDCLASS 結構)。 如果 lpClassName 是 NULL,所有類別名稱相符。

  • lpszWindowName
    為指定的視窗名稱的 NULL 結尾字串的點 (視窗標題)。 如果 lpWindowName 是 NULL,所有視窗名稱相符。

傳回值

識別這個執行個體具有指定的類別名稱和視窗名稱的視窗。 如果沒有找到,則為 NULL 這類視窗。

CWnd*可以是暫時的,而且不應儲存供日後使用。

備註

這個函式不會搜尋子視窗。

範例

// activate an application with a window with a specific class name
BOOL CMyApp::FirstInstance()
{
   CWnd *pWndPrev, *pWndChild;

   // Determine if a window with the class name exists...
   pWndPrev = CWnd::FindWindow(_T("MyNewClass"), NULL);
   if (NULL != pWndPrev)
   {
      // If so, does it have any popups?
      pWndChild = pWndPrev->GetLastActivePopup();

      // If iconic, restore the main window
      if (pWndPrev->IsIconic())
         pWndPrev->ShowWindow(SW_RESTORE);

      // Bring the main window or its popup to the foreground
      pWndChild->SetForegroundWindow();

      // and you are done activating the other application
      return FALSE;
   }

   return TRUE;
}

需求

Header: afxwin.h

請參閱

參考

CWnd 類別

階層架構圖

FindWindow