//又小小修改了一下,加了一些內(nèi)容^_^
武宣網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站開發(fā)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)2013年開創(chuàng)至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。閱讀提示:使用EGE時(shí)要創(chuàng)建c++項(xiàng)目, 不是c噢
話不多說直接上教程
--------------------------------------------------------------------------------------------------------------------
#include//使用ege的頭文件
void test() {
initgraph(1000, 625); //創(chuàng)建窗口
PIMAGE src1;//定義圖像對象
src1 = newimage();創(chuàng)建圖像對象
getimage(src1, "4.jpg");//從文件中讀取圖片
putimage(0, 0, src1);//在窗口上繪制圖片,相當(dāng)于貼上你的背景圖
setfont(26, 0, "宋體");//設(shè)置字體,26是字高, 0指的是字寬根據(jù)字高自動調(diào)整, 宋體是字體
setbkmode(TRANSPARENT);//這個(gè)是將文字的背景色設(shè)置成透明,否則一個(gè)字后面會有色塊
setcolor(BLACK);//這個(gè)是設(shè)置字體顏色
for(; is_run(); delay_fps(60)) { //is_run()判斷窗口是否存在,delay_fps(60) 作用是穩(wěn)定幀率并刷新窗口 ,一秒鐘循環(huán)60次
mouse_msg msg = {0}; //定義鼠標(biāo)變量并且初始化
while(mousemsg()) { //利用mousemsg()判斷有沒有鼠標(biāo)消息
msg = getmouse();
} //獲得鼠標(biāo)消息
if((msg.x >142 && msg.x< 391) && (msg.y >414 && msg.y< 499) && msg.is_left() && msg.is_down()) {
//插入函數(shù)
} else if((msg.x >587 && msg.x< 823) && (msg.y >417 && msg.y< 499) && msg.is_left() && msg.is_down()) {
//插入函數(shù)
}
}
}
注意!所有和鼠標(biāo)點(diǎn)擊有關(guān)的代碼全部放在for()循環(huán)里面,也包括函數(shù)的調(diào)用,否則你就算點(diǎn)了界面上的相關(guān)選項(xiàng),界面也不會有反應(yīng)!
1.創(chuàng)建窗口:initgraph(窗口的寬, 窗口的高) //這里的寬高都一像素為單位
2.讀取文件中的圖片:最好把圖片和項(xiàng)目都放在一個(gè)文件夾里,這樣就只用寫“文件名”,不然就要復(fù)制文件路徑,把文件路徑中的每一個(gè)單杠變成雙杠,切記!
文件名是自己保存的圖片的名字,可以把文件名修改成簡單的數(shù)字,方便操作(使用重命名即可)
3.制作界面:制作精美的界面,往往只需要最簡單的操作:直接在電腦自帶的畫圖工具里面畫
具體操作:1.先找一張好看的照片,將它裁剪成和窗口一樣大,如何裁剪請自己解決
?2.用畫圖的打開方式打開圖
片文件,之后就可以自己畫框,輸入文字等等
very important:如果想多次更換背景,就要再使用一次putimage();換上不同的圖片文件名,記得清屏哦!
//比如這樣
PIMAGE src1, src2;
src1 = newimage();
src2 = newimage();
getimage(src1, "文件名");
getimage(src2, "文件名");
putimage(src1);//背景圖是src1
//中間是你的代碼
//想要更換背景時(shí),就可以這樣操作
cleardevice();//先清屏
putimage(src2);//在把背景圖貼上去就可以啦
最后就是這樣啦,是不是很簡單!??!
根本不需要用按鈕啥的
4.確定你設(shè)置的框的位置:
比如上圖中我畫了一個(gè)“添加信息”,怎樣才可以在鼠標(biāo)點(diǎn)擊之后進(jìn)入“添加信息”的界面呢?
同樣很簡單!
獲取鼠標(biāo)消息后,用if()語句判斷鼠標(biāo)點(diǎn)擊的位置,msg.x是窗口的橫坐標(biāo),往右是正方向,msg.y是窗口的縱坐標(biāo),往下是正方向,其中左上角的坐標(biāo)是(0,0)
注意:坐標(biāo)的單位都是像素,具體查看方法可以用畫圖打開圖片文件,將你的鼠標(biāo)點(diǎn)在框的四個(gè)角就可以看到具體橫縱坐標(biāo),也就是像素。
接著用msg.is_left() 和msg.is_down()判斷你是否按下鼠標(biāo)左鍵即可
5.cleardevice()的使用,作用是清屏? ?一定要用,否則你在上個(gè)界面留下的痕跡,這個(gè)界面還會有,屬于是疊加buff了
建議在putimage()之前使用;
6.界面輸出文字:
推薦使用xyprintf(橫坐標(biāo),縱坐標(biāo),“輸出的文字”);這個(gè)是單行輸出
注意: 1.這里的橫縱坐標(biāo)是輸出的第一個(gè)字的左上角的坐標(biāo);
2. \n,\t在xyprintf()里面都無效
??3.EGE也有多行輸出,請自行查找資料
4. 橫縱坐標(biāo)不光可以寫具體的數(shù)組,里面也可以是含字母的參數(shù),因?yàn)槿绻阆氡闅v文件,是要在多行輸出的,比如30 + i; 但這里的i也是要改變的,不然依舊是在一行輸出!
可以這樣:for() {
? xyprintf(0, 30 + i, "");
? i++;
?????}
7.輸入框的使用:
如果你想讓用戶輸入信息的話,可以使用EGE自帶的輸入框,咱們怎么簡單怎么來
inputbox_getline("輸入框標(biāo)題", "輸入框的提示內(nèi)容", 一個(gè)char型數(shù)組, 數(shù)組大小);
char input[10];
例如:inputbox_getline("輸入", "請輸入賬號密碼", input, 10);
接著用戶輸入的信息就會存在input數(shù)組里面啦
注:也可以自己創(chuàng)建輸入框,請自行查找資料
8.退出EGE
程序運(yùn)行時(shí)會有兩個(gè)框,只有return 0是不夠的,還要在return 0之前加上?closegraph();用來關(guān)閉EGE
到這里EGE的新手版使用教程就已經(jīng)全部介紹完啦,還有啥不懂的再看看我貼的代碼,也可以自行查閱相關(guān)資料~~~~~byebye
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
本文標(biāo)題:[C語言界面設(shè)計(jì)]EGE圖形化界面簡易版教程(適合初學(xué)者)-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://jinyejixie.com/article32/decgsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站改版、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容