c語言做窗口
㈠ c語言這樣編寫窗口
你用的什麼編譯器?
TC下不可能寫出調動API的程序,也就是說,在TC下不可能編出窗口程序。 TC繼承的是DOS。
VC可以。
能夠獨立運行是因為沒有用動態庫。
象QQ比較高深了,我現在的能力還沒法給你詳細解釋。
㈡ 怎麼用c語言做一個界面
C 語言,就像他的名字一樣,他就是一門計算機編程語言;
要做界面,需要調用繪圖函數,而繪圖函數有很多種,Windows 的 GDI 和 GDI+ 或者 Direct2D,Linux 下的 OpenGL,移動設備上的 XNA ,都可以;
MFC 是微軟為咱們創建 Windows 窗體程序而設計好的開發包,可以提高開發效率,以面向對象的方式思考和設計程序,學習這個,需要有 Windows API 基礎;
至於 API,在 Windows 下面,就是指 Win32 API 了,就是 32 位 Windows 操作系統的應用程序編程介面,是 Windows 系統提供給開發者的底層功能;
這些都不是一兩句話可以概括的,需要自己多點去接觸,才會有自己的心得;
最後一條比喻不是很恰當,面向對象拆開來,可以是一堆 API,也可以是單純的一堆 C 語言句子,當然,也可以是一堆嵌入式匯編語句,所以沒辦法進行比喻;
㈢ C語言怎麼設計窗口呀
樓主
首先這不是c與c#區別
你學c#的時候之所以有這些控制項,能進行界面編輯是因為你建的是winform程序,在編輯的時候實際上也是有代碼控制的。如果你c#建的是控制台程序的話就會與c語言一樣了,但是你在應用中加入 using System.Windows.Forms;那麼就可以調用winform程序的控制項了。
一般的話你是為了學習一種語言的話建議學習控制台應用程序。如果用界面的話對你語言學習沒有什麼好處,反而會讓你分心。當你真真學習做一個項目的時候可以用winform來了。反正當你學習到一定程度你就會明白其中的關系了。
對於c語言的話我本人只用過控制台,通過代碼來創建窗口,也是可以產生你所需要的效果的。
你要明白現在你要學的是一門語言,你要懂得語法等知識,而不是費心去拉幾個控制項,所以好好的學好基礎吧。c#的話也在控制台上來聯系。你要學的不是開發工具,所以不要把精力浪費在這里,而且還把自己搞得亂七八糟的。
至於樓上的,vc是c++的編譯工具,只不過可以運行c語言程序而已,樓主用的工具比vc好的多,vc老了,樓主的才是新版,不用理會
㈣ c語言如何設置窗口
你的意思是,用C語言編寫出漂亮的窗口程序,而不是那種單調的DOS窗口?(即Windows編程,或可視化編程)
絕對可以啊,用MFC(即Visual C++)就可以,現在流行的軟體有非常多都是用MFC編的。
在Windows編程中,MFC是公認的最難學的一種(VB是最簡單的),不過這種情況在VC7.0出現以後有所改善,如果你要學MFC的話,建議學習VC7.0以上(含7.0)的MFC,不要學VC6.0的MFC,VC6的MFC簡直不是人學的。
至於你說的資料庫,VC是絕對能實現的,只是你沒見過而已。
㈤ 怎麼用c語言寫窗體程序
步驟:
1、注冊窗口類;
2、創建窗體;
3、消息循環;
4、編寫窗口消息處理函數。
代碼:
#include<windows.h>
#include<tchar.h>
LRESULTCALLBACKWindowProc(HWNDhwnd,UINTmsg,WPARAMwParam,LPARAMlParam);
intWINAPI_tWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPWSTRszCmdLine,intnCmdShow)
{
WNDCLASSwc;
wc.style=CS_HREDRAW|CS_VREDRAW;
wc.lpfnWndProc=WindowProc;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hInstance=hInstance;
wc.hIcon=NULL;
wc.hCursor=LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground=(HBRUSH)COLOR_WINDOW;//(HBRUSH)GetStockObject();
wc.lpszMenuName=NULL;
wc.lpszClassName=_T("MyWindowClass");
if(!RegisterClass(&wc))
{
MessageBox(NULL,_T("無法注冊窗口類"),_T("錯誤"),MB_OK);
return0;
}
HWNDnewWindow=CreateWindow(
_T("MyWindowClass"),
_T("我的第一個winapi程序"),
WS_OVERLAPPEDWINDOW,
0,
0,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL
);
if(NULL==newWindow)
{
MessageBox(NULL,_T("無法創建窗體"),_T("錯誤"),MB_OK);
return0;
}
ShowWindow(newWindow,nCmdShow);
UpdateWindow(newWindow);
MSGmsg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
LRESULTCALLBACKWindowProc(HWNDhwnd,UINTuMsg,WPARAMwParam,LPARAMlParam)
{
switch(uMsg)
{
caseWM_DESTROY:
{
PostQuitMessage(0);
break;
}
default:
returnDefWindowProc(hwnd,uMsg,wParam,lParam);
}
return0;
}
就是一個只有標題欄、關閉按鈕、最小化按鈕、最大化/還原按鈕、顯示區域的窗體。
㈥ 怎麼用C語言編寫一個windows窗口
調用window庫窗口函數即可創建windows窗口。
必須使用windows的編譯器,如VC,MS等等。
RegisterClassEx函數:
該函數注冊在隨後調用CreateWindow函數和CreateWindowEx函數中使用的窗口類。 RegisterClass函數己經由函數RegisterClassEx函數來代替,但是,如果不需要設置類的小目標則仍然可以使用RegisterClass函數。
CreateWindowEx函數:
該函數創建一個具有擴展風格的層疊式窗口、彈出式窗口或子窗口,其他與CreateWindow函數相同。關於創建窗口和其他參數的內容,請參看CreateWindow。具體仍可見微軟的msdn。
消息處理函數WindowProc:
該函數是一個應用程序定義的函數。它處理發送給窗口的消息。WINDPROC類型定義了一個指向該回調函數的指針。WindowProc是用於應用程序定義函數的佔位符。
函數原型:
LRESULT CALLBACK WindowProc (HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam);
參數:
hwnd:指向窗口的句柄。
uMsg:指定消息類型。
wParam:指定其餘的、消息特定的信息。該參數的內容與UMsg參數值有關。
IParam:指定其餘的、消息特定的信息。該參數的內容與uMsg參數值有關。
返回值:返回值就是消息處理結果,它與發送的消息有關。
一個簡單的Window的代碼如下:#include<Windows.h>
#include<tchar.h>
LRESULTWINAPIWinProc(HWNDhWnd,UINTMsg,WPARAMwParam,LPARAMlParam);
intWinMain(
__inHINSTANCEhInstance,
__in_optHINSTANCEhPrevInstance,
__inLPSTRlpCmdLine,
__inintnShowCmd
)
{
TCHAR*szName=_T("myWindow");
WNDCLASSEXwc={0};
HWNDhWnd=NULL;
MSGMsg={0};
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.cbSize=sizeof(WNDCLASSEX);
wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//通過函數來設置一個白色的背景,這里大家設置為NULL看看,會很有趣的
wc.hCursor=NULL;//不設置
wc.hIcon=NULL;//不設置
wc.hIconSm=NULL;//不設置
wc.hInstance=hInstance;//當前程序的句柄,hInstance是有系統給傳遞的
wc.lpfnWndProc=WinProc;//窗口處理過程的回調函數。
wc.lpszClassName=szName;//窗口類的名字。
wc.lpszMenuName=NULL;
wc.style=CS_HREDRAW|CS_VREDRAW;
RegisterClassEx(&wc);//在系統中注冊
hWnd=CreateWindowEx(WS_EX_CLIENTEDGE,szName,_T("我的窗口我喜歡"),WS_OVERLAPPEDWINDOW,
200,100,600,400,NULL,NULL,hInstance,NULL);//創建窗口,窗口標題為"我的窗口我喜歡"
if(hWnd==NULL)
{
MessageBox(NULL,_T("There'sanError"),_T("ErrorTitle"),MB_ICONEXCLAMATION|MB_OK);
return0;
}
ShowWindow(hWnd,nShowCmd);//顯示窗口
UpdateWindow(hWnd);
//下面是對消息的循環處理,大家先不必管這些,下節課我會細說的
while(GetMessage(&Msg,NULL,0,0))
{
TranslateMessage(&Msg);//翻譯消息
DispatchMessage(&Msg);//分派消息
}
returnMsg.message;
}
//消息處理函數
LRESULTWINAPIWinProc(HWNDhWnd,UINTMsg,WPARAMwParam,LPARAMlParam)
{
switch(Msg)//處理消息過程
{
caseWM_DESTROY://響應滑鼠單擊關閉按鈕事件
PostQuitMessage(0);//退出消息隊列
return0;//退出函數
}
returnDefWindowProc(hWnd,Msg,wParam,lParam);
}
㈦ C語言窗口設計
我們知道,顏色是三原色按照一定比例 綜合的結果。顏色在計算機中以數字形式存在。再通過16位的DA轉換成模擬值顯示在顯示器上。
㈧ c語言怎麼做windows窗口程序
用這些,很簡單:
1、語言:C++
2、類庫 MFC
3、工具 VC
然後自己深入研究,就可以順著微軟路線go on ... 了
㈨ 怎麼用c語言做界面
VC里可以生成一些界面代碼,你可以參考一下,或者參考一下MSDN也可以。這個問題不是能在這里回答的了的,因為要很多話才說的完。也不是一天兩天能學會的。強烈建議你看看這方面的書。