調用window庫窗口函數(shù)即可創(chuàng)建windows窗口。
創(chuàng)新互聯(lián)公司是一家專業(yè)的成都網(wǎng)站建設公司,我們專注成都做網(wǎng)站、成都網(wǎng)站設計、網(wǎng)絡營銷、企業(yè)網(wǎng)站建設,友情鏈接,1元廣告為企業(yè)客戶提供一站式建站解決方案,能帶給客戶新的互聯(lián)網(wǎng)理念。從網(wǎng)站結構的規(guī)劃UI設計到用戶體驗提高,創(chuàng)新互聯(lián)力求做到盡善盡美。
必須使用windows的編譯器,如VC,MS等等。
RegisterClassEx函數(shù):
該函數(shù)注冊在隨后調用CreateWindow函數(shù)和CreateWindowEx函數(shù)中使用的窗口類。 RegisterClass函數(shù)己經(jīng)由函數(shù)RegisterClassEx函數(shù)來代替,但是,如果不需要設置類的小目標則仍然可以使用RegisterClass函數(shù)。
CreateWindowEx函數(shù):
該函數(shù)創(chuàng)建一個具有擴展風格的層疊式窗口、彈出式窗口或子窗口,其他與CreateWindow函數(shù)相同。關于創(chuàng)建窗口和其他參數(shù)的內容,請參看CreateWindow。具體仍可見微軟的msdn。
消息處理函數(shù)WindowProc:
該函數(shù)是一個應用程序定義的函數(shù)。它處理發(fā)送給窗口的消息。WINDPROC類型定義了一個指向該回調函數(shù)的指針。WindowProc是用于應用程序定義函數(shù)的占位符。
函數(shù)原型:
LRESULT CALLBACK WindowProc (HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam);
參數(shù):
hwnd:指向窗口的句柄。
uMsg:指定消息類型。
wParam:指定其余的、消息特定的信息。該參數(shù)的內容與UMsg參數(shù)值有關。
IParam:指定其余的、消息特定的信息。該參數(shù)的內容與uMsg參數(shù)值有關。
返回值:返回值就是消息處理結果,它與發(fā)送的消息有關。
一個簡單的Window的代碼如下:
#include?Windows.h
#include?tchar.h
LRESULT?WINAPI?WinProc(HWND?hWnd,UINT?Msg,WPARAM?wParam,LPARAM?lParam);
int?WinMain(?
__in?HINSTANCE?hInstance,?
__in_opt?HINSTANCE?hPrevInstance,?
__in?LPSTR?lpCmdLine,?
__in?int?nShowCmd?
)
{
TCHAR?*szName?=?_T("myWindow");
WNDCLASSEX?wc?=?{0};
HWND?hWnd?????=?NULL;
MSG?Msg???????=?{0};
wc.cbClsExtra????=?0;
wc.cbWndExtra????=?0;
wc.cbSize????????=?sizeof(WNDCLASSEX);
wc.hbrBackground?=?(HBRUSH)GetStockObject(WHITE_BRUSH);//通過函數(shù)來設置一個白色的背景,這里大家設置為NULL看看,會很有趣的
wc.hCursor???????=?NULL;//不設置
wc.hIcon?????????=?NULL;//不設置
wc.hIconSm???????=?NULL;//不設置
wc.hInstance?????=?hInstance;//當前程序的句柄,hInstance是有系統(tǒng)給傳遞的
wc.lpfnWndProc???=?WinProc;//窗口處理過程的回調函數(shù)。
wc.lpszClassName?=?szName;//窗口類的名字。
wc.lpszMenuName??=?NULL;?
wc.style?????????=?CS_HREDRAW?|?CS_VREDRAW;?
RegisterClassEx(wc);//在系統(tǒng)中注冊
hWnd?=?CreateWindowEx(WS_EX_CLIENTEDGE,szName,_T("我的窗口我喜歡"),WS_OVERLAPPEDWINDOW,
200,100,600,400,NULL,NULL,hInstance,NULL);//創(chuàng)建窗口,窗口標題為"我的窗口我喜歡"
if(hWnd?==?NULL)
{
MessageBox(NULL,_T("There's?an?Error"),_T("Error?Title"),MB_ICONEXCLAMATION|MB_OK);
return?0;
}
ShowWindow(hWnd,nShowCmd);//顯示窗口
UpdateWindow(hWnd);
//下面是對消息的循環(huán)處理,大家先不必管這些,下節(jié)課我會細說的
while(GetMessage(Msg,NULL,0,0))
{
TranslateMessage(Msg);//翻譯消息
DispatchMessage(Msg);//分派消息
}
return?Msg.message;
}
//消息處理函數(shù)
LRESULT?WINAPI?WinProc(HWND?hWnd,UINT?Msg,WPARAM?wParam,LPARAM?lParam)
{
switch(Msg)//處理消息過程
{
case?WM_DESTROY://響應鼠標單擊關閉按鈕事件
PostQuitMessage(0);//退出消息隊列
return?0;//退出函數(shù)
}
return?DefWindowProc(hWnd,Msg,wParam,lParam);
}
case LEFT :goleft(x, y); break;
case RIGHT :goright(x, y); break;
case DOWN :godown(x, y); break;
case UP :goup(x, y); break;
case ENTER :n=0; break;
case ESC :end();
}
}
void qipan()
{
庫函數(shù)(Library function)是把函數(shù)放到庫里,供別人使用的一種方式。.方法是把一些常用到的函數(shù)編完放到一個文件里,供不同的人進行調用。調用的時候把它所在的文件名用#include加到里面就可以了。一般是放到lib文件里的。
一般是指編譯器提供的可在c源程序中調用的函數(shù)。可分為兩類,一類是c語言標準規(guī)定的庫函數(shù),一類是編譯器特定的庫函數(shù)。
由于版權原因,庫函數(shù)的源代碼一般是不可見的,但在頭文件中你可以看到它對外的接口
庫函數(shù)簡介。
C語言的語句十分簡單,如果要使用C語言的語句直接計算sin或cos函數(shù),就需要編寫頗為復雜的程序。因為C語言的語句中沒有提供直接計算sin或cos函數(shù)的語句。又如為了顯示一段文字,我們在C語言中也找不到顯示語句,只能使用庫函數(shù)printf。
C語言的庫函數(shù)并不是C語言本身的一部分,它是由編譯程序根據(jù)一般用戶的需要編制并提供用戶使用的一組程序。C的庫函數(shù)極大地方便了用戶,同時也補充了C語言本身的不足。事實上,在編寫C語言程序時,應當盡可能多地使用庫函數(shù),這樣既可以提高程序的運行效率,又可以提高編程的質量。
這里調用的是靜態(tài)庫。
函數(shù)庫:函數(shù)庫是由系統(tǒng)建立的具有一定功能的函數(shù)的集合。庫中存放函數(shù)的名稱和對應的目標代碼,以及連接過程中所需的重定位信息。用戶也可以根據(jù)自己的需要建立自己的用戶函數(shù)庫。
庫函數(shù):存放在函數(shù)庫中的函數(shù)。庫函數(shù)具有明確的功能、入口調用參數(shù)和返回值。
連接程序:將編譯程序生成的目標文件連接在一起生成一個可執(zhí)行文件。
頭文件:有時也稱為包含文件。C語言庫函數(shù)與用戶程序之間進行信息通信時要使用的數(shù)據(jù)和變量,在使用某一庫函數(shù)時,都要在程序中嵌入(用#include)該函數(shù)對應的頭文件。
由于C語言編譯系統(tǒng)應提供的函數(shù)庫尚無國際標準。不同版本的C語言具有不同的庫函數(shù),用戶使用時應查閱有關版本的C的庫函數(shù)參考手冊。我們以Turbo C為例簡介一下C的庫函數(shù),并附錄中給出了Turbo C的部分常用庫函數(shù)。
網(wǎng)站欄目:c語言窗口庫函數(shù) c++窗口庫
本文來源:http://muchs.cn/article48/doeiiep.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、網(wǎng)站導航、企業(yè)網(wǎng)站制作、、靜態(tài)網(wǎng)站、關鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)