程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> Windows API一日一練(36)SetWindowText函數

Windows API一日一練(36)SetWindowText函數

編輯:.NET實例教程
在開發軟件裡,有時候需要改變窗口上標題的文字。比如按鈕上的文字,為了適應多國語言的顯示,就需要改變它顯示的內容。這時就需要使用SetWindowText函數來改它的內容。下面的例子就實現改變按鈕的標題。
 
函數SetWindowText聲明如下:
WINUSERAPI
BOOL
WINAPI
SetWindowTextA(
    __in HWND hWnd,
    __in_opt LPCSTR lpString);
WINUSERAPI
BOOL
WINAPI
SetWindowTextW(
    __in HWND hWnd,
    __in_opt LPCWSTR lpString);
#ifdef UNICODE
#define SetWindowText SetWindowTextW
#else
#define SetWindowText SetWindowTextA
#endif // !UNICODE
hWnd是窗口的句柄。
lpString是要需要顯示的文字。
 
調用這個函數的例子如下:
#001 //
#002 // 響應命令.
#003 // 蔡軍生 2007/09/14 QQ:9073204
#004 //
#005 LRESULT CCaiWinMsg::OnCommand(int nID,int nEvent)
#006 {
#007  // 菜單選項命令響應:
#008  switch (nID)
#009  {
#010  case IDC_CREATEBTN:
#011         //顯示一個按鈕。
#012         if (!m_hBtn)
#013         {
#014                m_hBtn = CreateWindow(_T("BUTTON"),_T("按鈕"),
#015                    WS_VISIBLE|WS_CHILD|BS_PUSHBUTTON,
#016                    50,50,100,32,
#017                     m_hWnd,(HMENU)IDC_BTN,m_hInstance,NULL);
#018         }                                          
#019         break;
#020  case IDC_BTN:
#021         OutputDebugString(_T("10.5pt">按鈕按下\r\n"));
#022         {
#023               static bool bChangeText = true;
#024               if (bChangeText)
#025               {
#026                    //設置按鈕的文字。
#027                   SetWindowText(m_hBtn,_T("改變它"));
#028               }
#029               else
#030               {
#031                    //設置按鈕的文字。
#032                   SetWindowText(m_hBtn,_T("按鈕"));
#033               }
#034 

ZE: 10.5pt">#035               //每一次都改變。
#036               bChangeText = !bChangeText;
#037         }
#038         break;
#039  default:
#040         return CCaiWin::OnCommand(nID,nEvent);
#041  }
#042 
#043  return 1;
#044 } 
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved