Ⅰ 怎麼用codeblocks編寫c語言的圖形程序
在codeblocks中,可以通過集成EGE庫,來實現C語言圖形程序的編寫模段,具體方式如下:
一、安裝:
1、下載ege安裝包;
2、將安裝包解壓;
3、把壓配喊縮包里include目錄下所有文件,復制到編譯器安裝目錄下的include目錄內,例如D:MinGWinclude;
4、把lib目錄下對應編譯器名目錄下的文件,復制到編譯器安裝目錄下的lib目錄內,例如D:MinGWlib。
二、建立工程:
只要第1步做好以後,其實已經安裝好ege了,剩下的只是配置build option.
點擊file-new-projects,選擇Console application:
Ⅱ c語言怎麼做圖形界面
C語言可以做圖形界面。C語言中要做圖形見面,首先需要設置為圖形模式,確定顯卡類型,對屏幕進行初始猛彎亂化等等。相關的函數如下:
1.detectgraph()顯示卡檢測函數
2.initgraph()圖形初始化函數
3.getdrivername()獲取圖形驅動程序名的指針
4.getgraphmode()獲取圖形模式函數
5.getmoderange()獲取模式值范圍函數
6.getmaxmode()獲取最大顯示模式函數鬧凱
7.getmodename()獲取顯示模式名函數
8.graphdefaults()圖形設置復位預設值函數
9.setgraphmode()設置圖形模式函數
10.restorecrtmode()恢復文本顯示模式函數
11.graphresult()圖形操作結果函數
12.grpaherrormsg()圖形錯誤信息函數
13.setgraphbufsize()設置圖形緩沖區大小函數
14.setactivepage()設置可輸出顯示頁函數
15.setvisualpage()設置可見枝檔顯示頁數
16.closegraph()關閉圖形模式函數希望以上回答對你有幫助,謝謝。
Ⅲ 如何用c語言作出有圖形界面的小程序
那需要學VC。確切的說是要學MFC。
MFC編圖形化程序也是很麻煩的,難學,繁瑣。
其實你可以再學Java或者C#。
Java本身也不適合做圖形化應用程序,但是比MFC要簡單得多。
C#則是當前做圖形化程序最簡單高效的了,不需要編程單靠滑鼠拖拽就能做出圖形界面。特別是C#的WPF圖形框架更是把圖形化編程簡化如神行到了極限。
所以強烈建議學C#。
C#語言綜合Java和C++的優點。Java和C++都源自C語言。所以學C#之前最好先學一下C++,C、C++、C#可以說是一脈相承,向下兼容的。
總之,學圖形化編程比較好的順序是:
C(結構化語言渣嘩,入門)-> C++(面向對象語言,鋪墊) -> C# (享受快速圖形化開發吧)
忘解釋那幾個名詞了,補上:
集成瞎姿開發環境:就是IDE,一類開發工具。
你的代碼本來可以直接在記事本里寫完,然後命令行下調用編譯器編譯就能執行了。
集成開發環境將代碼編輯、代碼編譯執行、代碼調試功能集成在一起(甚至集成更多功能),使開發人員的開發變得更加高效。比如Visual C++ 6.0就是一個集成開發環境,還有Eclipse、CodeBlocks、Visual Studio等都是。
Ⅳ c語言 怎麼做圖形界面的程序
這是最簡單的界面程序://c++.cpp:定義應用程序的入口點。
//
#include"stdafx.h"
#include"c++.h"
#defineMAX_LOADSTRING100
//全局變數:
HINSTANCEhInst; //當前實例
TCHARszTitle[MAX_LOADSTRING]; //標題欄文本
TCHARszWindowClass[MAX_LOADSTRING]; //主窗口類名
//此代碼模塊中包含的函蠢沒沒數的前向聲明:
ATOM MyRegisterClass(HINSTANCEhInstance);
BOOL InitInstance(HINSTANCE,int);
LRESULTCALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
INT_PTRCALLBACK About(HWND,UINT,WPARAM,LPARAM);
intAPIENTRY_tWinMain(HINSTANCEhInstance,
HINSTANCEhPrevInstance,
察中LPTSTRlpCmdLine,
intnCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
//TODO:在此放置代碼。
MSGmsg;
HACCELhAccelTable;
//初始化全局字元串
LoadString(hInstance,IDS_APP_TITLE,szTitle,MAX_LOADSTRING);
LoadString(hInstance,IDC_C,szWindowClass,MAX_LOADSTRING);
MyRegisterClass(hInstance);
//執行應用程序初始化:
if(!InitInstance(hInstance,nCmdShow))
{
returnFALSE;
}
hAccelTable=LoadAccelerators(hInstance,MAKEINTRESOURCE(IDC_C));
//主消息循環:
while(GetMessage(&msg,NULL,0,0))
{
if(!TranslateAccelerator(msg.hwnd,hAccelTable,&msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return(int)msg.wParam;
}
//
//函數帶納:MyRegisterClass()
//
//目的:注冊窗口類。
//
//注釋:
//
//僅當希望
//此代碼與添加到Windows95中的「RegisterClassEx」
//函數之前的Win32系統兼容時,才需要此函數及其用法。調用此函數十分重要,
//這樣應用程序就可以獲得關聯的
//「格式正確的」小圖標。
//
ATOMMyRegisterClass(HINSTANCEhInstance)
{
WNDCLASSEXwcex;
wcex.cbSize=sizeof(WNDCLASSEX);
wcex.style =CS_HREDRAW|CS_VREDRAW;
wcex.lpfnWndProc =WndProc;
wcex.cbClsExtra =0;
wcex.cbWndExtra =0;
wcex.hInstance =hInstance;
wcex.hIcon =LoadIcon(hInstance,MAKEINTRESOURCE(IDI_C));
wcex.hCursor =LoadCursor(NULL,IDC_ARROW);
wcex.hbrBackground =(HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName =MAKEINTRESOURCE(IDC_C);
wcex.lpszClassName =szWindowClass;
wcex.hIconSm =LoadIcon(wcex.hInstance,MAKEINTRESOURCE(IDI_SMALL));
returnRegisterClassEx(&wcex);
}
//
//函數:InitInstance(HINSTANCE,int)
//
//目的:保存實例句柄並創建主窗口
//
//注釋:
//
//在此函數中,我們在全局變數中保存實例句柄並
//創建和顯示主程序窗口。
//
BOOLInitInstance(HINSTANCEhInstance,intnCmdShow)
{
HWNDhWnd;
hInst=hInstance;//將實例句柄存儲在全局變數中
hWnd=CreateWindow(szWindowClass,szTitle,WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,0,CW_USEDEFAULT,0,NULL,NULL,hInstance,NULL);
if(!hWnd)
{
returnFALSE;
}
ShowWindow(hWnd,nCmdShow);
UpdateWindow(hWnd);
returnTRUE;
}
//
//函數:WndProc(HWND,UINT,WPARAM,LPARAM)
//
//目的:處理主窗口的消息。
//
//WM_COMMAND -處理應用程序菜單
//WM_PAINT -繪制主窗口
//WM_DESTROY -發送退出消息並返回
//
//
LRESULTCALLBACKWndProc(HWNDhWnd,UINTmessage,WPARAMwParam,LPARAMlParam)
{
intwmId,wmEvent;
PAINTSTRUCTps;
HDChdc;
switch(message)
{
caseWM_COMMAND:
wmId=LOWORD(wParam);
wmEvent=HIWORD(wParam);
//分析菜單選擇:
switch(wmId)
{
caseIDM_ABOUT:
DialogBox(hInst,MAKEINTRESOURCE(IDD_ABOUTBOX),hWnd,About);
break;
caseIDM_EXIT:
DestroyWindow(hWnd);
break;
default:
returnDefWindowProc(hWnd,message,wParam,lParam);
}
break;
caseWM_PAINT:
hdc=BeginPaint(hWnd,&ps);
//TODO:在此添加任意繪圖代碼...
EndPaint(hWnd,&ps);
break;
caseWM_DESTROY:
PostQuitMessage(0);
break;
default:
returnDefWindowProc(hWnd,message,wParam,lParam);
}
return0;
}
//「關於」框的消息處理程序。
INT_PTRCALLBACKAbout(HWNDhDlg,UINTmessage,WPARAMwParam,LPARAMlParam)
{
UNREFERENCED_PARAMETER(lParam);
switch(message)
{
caseWM_INITDIALOG:
return(INT_PTR)TRUE;
caseWM_COMMAND:
if(LOWORD(wParam)==IDOK||LOWORD(wParam)==IDCANCEL)
{
EndDialog(hDlg,LOWORD(wParam));
return(INT_PTR)TRUE;
}
break;
}
return(INT_PTR)FALSE;
}
Ⅳ 怎樣可以自己製作圖片,用什麼軟體
我做這行,所以你說的這些我也都知道,但是這么打一篇子來,會要人老命的。簡單說說吧~·
Photoshop 和 CorelDRAW 他們都是制圖軟體一個是點陣圖製作軟體更有利於設計發揮,橡遲另一個是矢量圖製作軟體,更有利於印刷拼接和文字處理。·如果架構一圖像(或圖形)工作室,需要的軟體和儀器都很多,首先要知道自己做的是3D圖形工作室還是平面工作室,再高些甚至可能用到非線編輯機。首先一部刻錄機和在一個區域網內3台以上的電腦是必備的,一個電源箱防止停電。(如果你只要做一個插畫設計師有個一個筆記本電腦就可以了)再其次,軟體除了上面所說的,比如說還有排版的軟體,還有一些製作名片的軟體比如說蒙泰,illustrator也是很常用的。·至於圖層這就應該聯繫到空間學,每個物體之間的暗喻都是存在的,不同的顏色會傳達不同的情感,就像人一樣,層次和塊的大小也是表達情感的主要方式。而在Photoshop里層更像是一種特效工具,利用他可以達到更多的讓人目絢的效果。層更像是在園藝梁返李者的角色。有了層的出現才有了精神世界的交流。·至於路徑在CorelDRAW里調節性應該更強一些,比起Photoshop那種僵硬的操作,PS中那是個讓人頭疼的問題,大量煩瑣的操作不如在CorelDRAW里來的更簡單一些,而很多軟體之間的路徑是互通的,比方說PS在導入里就有導入路徑這種功能。我現在都是在網上直接「當」這些路徑文件直接使用很少會自己動手去畫了。·通道,這是由印刷而誕生的名詞,一些老式的排版軟體在印刷廠里一直沿用至今,因為他們是為通道而生的,也是最了解通道的「人」。通道是顏色的誕生地,當然我們也可以通過建立的手段,讓更多專色通道的出現,普通的印刷CMYK應該是最流行的通道模式了,我們做圖片的時候,也可以利用通道來做一些單色的調整。或者RGB這樣光色原理的通道更適用與網路。LAB更適用與掃描儀這樣的東東,因為他不會丟失顏色。至於專色通道一般採用與高級的印刷品,應用與特殊的油墨,如我們長見的人民幣印刷。·再說說色制,其實沒有必要說的那麼煩瑣,簡單點說就是同一色系中不同顏色的數量,單色機採用的色制有深灰,淡灰,黑白。這樣就可以簡單的顯示出復雜的畫面效果。再例如世閉說,顯示器就是利用RGB三原色,在屏幕中以三角形反射出不同強度的光來顯示畫面。我們也可以手動調節某個光的輻射強度,來使屏幕達到視覺中更理想的效果。·至於圖象的解析度,用術語來說就是:用於量度點陣圖圖像內數據量多少的一個參數。通常表示成ppi(每英寸像素)。包含的數據越多,圖形文件的長度就越大,也能表現更豐富的細節。在日常中網路上的解析度普遍採用72或96像素,印刷中通常使用為300像素。至於你說的怎樣在各種儀器中去衡量他,就如我上面所說,看你想要做什麼了。在PS中改變解析度很簡單,在新建一個文件的時候就有解析度的設置,或者在已經打開的文件框上方有一個顯示文件名的信息條,再上面點右鍵,選圖象大小即可調整。·至於保存照片的格式有很多,但最普遍的是JPG、TIFF和BMP這三種。至於保存的軟體有很多種如系統自帶的最簡單的「畫圖」或ACDEE這樣的看圖軟體,又或復雜的PS都可以保存圖片。·網路中使用的圖片格式最常見的為GIF或JPG,你在保存的時候選RGB色,存為這兩種格式即可。·至於通道我上面已經說過一些,通道在PS中可以調整每個顏色的多少以外,我們還可以利用PS中的通道做各種各樣的效果,例如對單一顏色的選取,通過新建通道製作雕刻字等等,不過隨著PS功能越來越完善,通道已經漸漸退出了我們的視線。·圖形的格式,這個用的久了自然就會有自己的心得。我在網上直接摘了這樣的詳細資料,你看一下吧文件格式是一種將文件以不同方式進行保存的格式。Photoshop支持幾十種文件格式,因此能很好地支持多種應用程序。在Photoshop中,常見的格式有PSD、BMP、PDF、JPEG、GIF、TGA、TIFF等等。1. PSD格式PSD格式是Photoshop的固有格式,PSD格式可以比其他格式更快速地打開和保存圖像,很好的保存層、通道、路徑、蒙版以及壓縮方案不會導致數據丟失等。但是,很少有應用程序能夠支持這種格式。2、BMP格式BMP(Windows Bitmap)格式是微軟開發的Microsoft Pain的固有格式,這種格式被大多數軟體所支持。BMP格式採用了一種叫RLE的無損壓縮方式,對圖像質量不會產生什麼影響。3、PDF格式PDF(Portable Document Format)是由Adobe Systems創建的一種文件格式,允許在屏幕上查看電子文檔。PDF文件還可被嵌入到Web的HTML文檔中。4、JPEG格式JPEG(由JointExperts Group縮寫而成,意為聯合圖形專家組)是我們平時最常用的圖像格式。它是一個最有效、最基本的有損壓縮格式,被極大多數的圖形處理軟體所支持。JPEG格式的圖像還廣泛用於網頁的製作。如果對圖像質量要求不高,但又要求存儲大量圖片,使用JPEG無疑是一個好辦法。但是,對於要求進行圖像輸出列印,最好不使用JPEG格式,因為它是以損壞圖像質量而提高壓縮質量的。5、GIF格式GIF格式是輸出圖像到網頁最常採用的格式。GIF採用LZW壓縮,限定在256色以內的色彩。GIF格式以87a和89a兩種代碼表示。GIF87a嚴格支持不透明像素。而GIF89a可以控制那些區域透明,因此,更大地縮小了GIF的尺寸。如果要使用GIF格式,就必須轉換成索引色模式(Indexed Color),使色彩數目轉為256或更少。6、TGA格式TGA(Targa)格式是計算機上應用最廣泛的圖象文件格式,它支持32位。7、TIFF格式TIFF(Tag Image File Format,意為有標簽的圖像文件格式)是Als在Mac初期開發的,目的是使掃描圖像標准化。它是跨越Mac與PC平台最廣泛的圖像列印格式。TIFF使用LZW無損壓縮方式,大大減少了圖像尺寸。另外,TIFF格式最令人激動的功能是可以保存通道,這對於你處理圖像是非常有好處的。·濾鏡:濾鏡是 PhotoShop 中功能最豐富、效果最奇特的工具之一。濾鏡是通過不同的方式改變象素數據,以達到對圖象進行抽象、藝術化的特殊處理效果。photoshop 濾鏡可以分為三種類型:內闕濾鏡、內置濾鏡(自帶濾鏡)、外掛濾鏡(第三方濾鏡)。我們最常用的外掛濾鏡是KTP和水晶糖果,KTP最早是以閃電和其他一系列的逼真特效製作而出名的,水晶糖果最擅長的也如他的名字一樣,水珠和玻璃~。至於內置的也有很多,風格化,晶格化,龜裂紋,很多很多,自己多運用看看,會找出很多隻屬於自己的東西。至於從7。0以後又推出的許多新的濾鏡,液化等等,這些都是書本上所不能解釋的,都需要自己漫漫的去理解才可以。最後這兩部分有點漏水的感覺,很多術語都是從網上摘的見量,實在太累了,寫不下去了。希望對你在設計之路上有所幫助。