EnableWindow

Windows API函式。該函式允許/禁止指定的視窗或控制項接受滑鼠和鍵盤的輸入,當輸入被禁止時,視窗不回響滑鼠和按鍵的輸入,輸入允許時,視窗接受所有的輸入。

基本介紹

  • 中文名:EnableWindow
  • 外文名:EnableWindow
  • 聲明位置:WinUser.h
  • 返回值類型:int
  • 調用方式:__stdcall
  • 參數類型:(HWND__*,int)
函式功能,函式原型,參數,返回值,備註,示例,

函式功能

該函式允許/禁止指定的視窗或控制項接受滑鼠和鍵盤的輸入,當輸入被禁止時,視窗不回響滑鼠和按鍵的輸入,輸入允許時,視窗接受所有的輸入。

函式原型

BOOL EnableWindow(HWND hWnd,BOOL bEnable);
WINUSERAPIBOOLWINAPIEnableWindow(_In_HWNDhWnd,_In_BOOLbEnable);

參數

hWnd:被允許/禁止的視窗句柄
bEnable:定義視窗是被允許,還是被禁止。若該參數為TRUE,則視窗被允許。若該參數為FALSE,則視窗被禁止。

返回值

在 EnableWindow 成員函式調用之前,指示狀態。 如果視窗此前已禁用,則返回值是非零。 返回值是0,則視窗先前啟用或錯誤。若想獲得更多的錯誤信息,可調用GetLastError函式。

備註

若視窗的允許狀態將發生變化,WM_ENABLE訊息將在Enblewindow函式返回前傳送出去,若視窗已被禁止,它所有的子視窗也被禁止,儘管並未向子視窗傳送WM_ENABLE訊息。
視窗被激活前必須處於允許狀態。比如,一個應用程式將顯示一個無模式對話框並且已使該對話框的主視窗處於禁止狀態,則在撤消該對話框之前須使其主視窗處於允許狀態。否則,其他視窗將接受並被激活。若子視窗被禁止,則系統決定由哪個視窗接受滑鼠訊息時將忽略該視窗
預設情況下,視窗被創建時被置為允許。若創建一個初始化為禁止狀態的視窗,應用程式需要在CeateWindow或CeateWindowEX函式中定義WS_DISABLED樣式。視窗創建後,應用程式可用EnbleWindow來允許禁止視窗。
應用程式可利用此函式允許/禁止對話框中的某個控制項,被禁止的控制項既不能接受鍵盤輸入,也不能被用戶訪問,但不能禁用一個擁有輸入焦點的控制項。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭檔案:Winuser.h;庫檔案:user32.lib。

示例

//CMyFileDialog is a CFileDialog-derived class
//OnInitDialog is the handler for WM_INITDIALOG
BOOL CMyFileDialog::OnInitDialog()
{
CFileDialog::OnInitDialog();
CWnd* pWndParent = GetParent();
//make sure you add #include <dlgs.h> for IDs 'edt1' & 'stc3'
//disables the 'file name' edit and static control
//of the standard file open dialog
//get handle of 'file name' combobox control & disable it

CWnd* pWnd = pWndParent->GetDlgItem(cmb13);
pWnd->EnableWindow(FALSE);
//get handle of 'file name' static control & disable it
pWnd = pWndParent->GetDlgItem(stc3);
pWnd->EnableWindow(FALSE);
return TRUE;
}

相關詞條

熱門詞條

聯絡我們