easyx的基礎應用教程

2022-04-12 20:07:43 字數 3030 閱讀 1962

什麼是 easyx?

easyx 是針對 c++ 的圖形庫,可以幫助 c 語言初學者快速上手圖形和遊戲程式設計。 比如,可以用 vc + easyx 很快的用幾何圖形畫乙個房子,或者一輛移動的小車,可以編寫俄羅斯方塊、貪吃蛇、黑白棋等小遊戲可以練習圖形學的各種演算法,等等。

許多學程式設計的都是從 c 語言開始入門的,而目前的現狀是:

1. 有些學校以 turbo c 為環境講 c 語言,只是 turbo c 的環境實在太老了,複製貼上都很不方便。

2. 有些學校直接拿 vc 來講 c 語言,因為 vc 的編輯和除錯環境都很優秀,並且 vc 有適合教學的免費版本。可惜在 vc 下只能做一些文本性的練習 題,想畫條直線畫個圓都很難,還要註冊視窗類、建訊息迴圈等等,初學者會受嚴重打擊的。初學程式設計想要繪圖就得用 tc,很是無奈。

3. 還有計算機圖形學,這門課程的重點是繪圖演算法,而不是 windows 程式設計。所以,許多老師不得不用 tc 教學,因為 windows 繪圖太複雜了,會偏離教學的重點。新的圖形學的書有不少是用的 opengl,可是門檻依然很高。

所以,我們想給大家乙個更好的學習平台,就是 vc 方便的開發平台和 tc 簡單的繪圖功能,於是就有了這個 easyx 庫。如果您剛開始學 c 語言,或 者您是一位教 c 語言的老師,再或者您在教計算機圖形學,那麼這個庫一定會讓您興奮的。

點選進入easyx官網

2.安裝easyx會出現下圖頁面,點選安裝文件和visual c++ 2017

3.開啟剛才安裝的文件,就可以看到裡面包括了easyx函式的介紹和使用方法。

使用之前要#include // 引用圖形庫標頭檔案

然後initgraph(640, 480); // 建立繪圖視窗,大小為 640x480 畫素(繪圖視窗不是控制台,initgraph(640,480,showconsole)就可以看到我們熟悉的控制台了)

過程:定義變數->載入->貼出

分別用到image、loadimage、putimage

往往和beginbatchdraw、flushbatchdraw、endbatchdraw搭配使用可解決繪圖閃爍問題,詳見文件。

image  bk2, bk3;

loadimage(&bk2, "image\\bk2.jpg", 1000, 700, true);//幕布

loadimage(&bk3, "image\\bk3.jpg");//背景

setbkmode(transparent);

for (int i = -700; i != 0; i++)//幕布

首先需要定義乙個mousemsg變數,然後可以使用mousehit函式判斷是否有滑鼠資訊(一般使用巢狀while迴圈多次判斷),然後getmousemsg,再根據滑鼠資訊執行相應操作。
mousemsg m;

flushmousemsgbuffer();

while (1)

}if (!((m.x >= 105 && m.x <= 282) && (m.y >= 423 && m.y <= 480)))//滑鼠放在按鈕變色

if ((m.x >= 751 && m.x <= 929) && (m.y >= 425 && m.y <= 482))//使用者模式

}if (!((m.x >= 751 && m.x <= 929) && (m.y >= 425 && m.y <= 482)))//滑鼠放在按鈕變色}}

使用這類函式可以知道滑鼠操作判斷時的座標,比如上方的按鈕座標就是用rectangle找的。或者實現滑鼠放在按鈕變色、點選效果等。
outtextxy、settextcolor、settextstyle,inputbox等等(不難,看完文件介紹就懂)

但是outtextxy只能輸出char型,需要輸出int等型別時需要用到sprintf

點選進入sprintf百科

int ybkcount=1;

char tempnum[50];

sprintf(tempnum, "已選票數:%d", ybkcount);

outtextxy(765, 405, tempnum);

* 乙個函式往往有多個引數,可以有預設引數,沒有特別什麼一般預設為null。

* cleardevice可以清屏,但是如果需要保留某部分時可以用getimage

* 加入sleep來控制貼圖速度

* 可以通過繪圖覆蓋,然後輸出來實現更新

相信大家到這裡已經對easyx的使用有了一定的理解,但是可能有的同學會說好像沒學到什麼,或者是就會這幾個函式有什麼用,我個人認為教程不是手把手教學,而是啟蒙,然後同學們舉一反三,從原理上理解函式,學會自己去領悟函式,函式是教不完的,而且乙個函式可以有非常多的用法,不同的搭配方法也可以實現不同的效果,這些都需要同學們積極探索,easyx或許只是乙個小的開始,希望同學們能夠在學習的過程中不斷思考,不斷成長。
最後來個效果圖

Easyx基礎知識

控制頁面類 1.include 為easyx庫的標頭檔案 2.initgraph x,y 初始化x y大小的繪圖螢幕 3.closegraph 關閉繪圖螢幕 4.sleep n 延時n毫秒 5.system pause 起暫停作用,使用者隨機輸入繼續執行 6.initgraph x,y,showco...

easyx文字輸出 簡單學會Easyx的使用

時間標頭檔案 include 加入 的標頭檔案 pragma comment lib,winmm.lib 加入 的庫 歡迎介面 void welcome 功能 開啟乙個視窗 initgraph 640,480 寬 640,高 480 單位 畫素 新增背景 mci media contorl inte...

Zephyr 教程 應用程式基礎

通過建立包含下列檔案的目錄定義 zephyr 應用程式 核心配置檔案 應用程式通常提供乙個配置檔案 conf 以指定乙個或多個核心配置選項。如果沒有提供配置檔案,將使用應用程式存在的配置選項。如果應用程式也沒有提供配置選項,將使用核心預設的選項。微核心應用程式通常還提供乙個額外的字尾為.mdef的配...