當前位置:
首頁 > 知識 > C語言新案例-跳躍的小球

C語言新案例-跳躍的小球

#include

#include

int main()

{

char title[200];//能存放200個字元的字元數組,用於保存窗口的標題

HWND hwnd; //窗口的句柄

RECT rect; //矩形結構體

int width,height;//窗口的寬度和高度

POINT ptCenter; //窗口的中心點

HDC hdc; //窗口的設備上下文

HBRUSH hBrush,hClearBrush,hOldBursh;//畫刷

int disX=5,disY=5;//小球每次左右、上下移動5像素

GetConsoleTitle(title,200);//1.獲取控制台窗口的標題

hwnd=FindWindow(NULL,title);//2.通過標題得到該窗口的句柄

GetClientRect(hwnd,&rect);//3.獲取窗口的寬度與高度

想要一起學習C++的可以加裙四五三二四三二八零,裙內有各種資料滿足大家,歡迎加裙

width=rect.right-rect.left;//右邊的點減左邊的點就是窗口的寬度

height=rect.bottom-rect.top;//下邊的點減上邊的點就是窗口的高度

ptCenter.x=width/2;//4.獲取窗口的中心點,為畫圓作準備

ptCenter.y=height/2;

hdc=GetDC(hwnd);//5.獲取窗口DC

hBrush=CreateSolidBrush(RGB(255,0,0));//6.創建紅色畫刷和黑色畫刷

hClearBrush=CreateSolidBrush(RGB(0,0,0));

while(1)

{

hOldBursh=SelectObject(hdc,hBrush);//7.選擇紅色的畫刷開始畫圓

Ellipse(hdc,ptCenter.x-20,ptCenter.y-20,ptCenter.x+20,ptCenter.y+20);

//8.間隔10毫秒移動一次小球,移動的距離均為5像素

Sleep(20);

//9.選擇黑色的畫刷進行清除移動的影子。

SelectObject(hdc,hClearBrush);

Ellipse(hdc,ptCenter.x-20,ptCenter.y-20,ptCenter.x+20,ptCenter.y+20);

if(ptCenter.x+20>=width||ptCenter.x-20

disX=-disX;

ptCenter.x+=disX;

if(ptCenter.y+20>=height||ptCenter.y-20

disY=-disY;

ptCenter.y+=disY;

//10.放回原先的畫刷

SelectObject(hdc,hOldBursh);

}

return 0;

}

編譯時記得加上 -lgdi32

想要一起學習C++的可以加裙四五三二四三二八零,裙內有各種資料滿足大家,歡迎加裙


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 C加加 的精彩文章:

C語言寫的秒速計算四則混合運算項目
C語言C加加 修飾符類型

TAG:C加加 |

您可能感興趣

《Apex英雄》跳躍塔作用介紹
新版本Salto-1P跳躍機器人現在可以精確控制跳躍
詩歌:跳躍的詠嘆
TVB新劇《跳躍生命線》將播!何廣沛自覺這三位男星!
3D簡單跳躍跑酷遊戲——《跳躍騎士》
華為P20 Pro評測:跳躍升級何止徠卡三攝
新型CRISPR要火!國際頂級雜誌接連發文,小小「跳躍基因」有大作用
《果醬跳躍》:充滿童趣的一鍵式跳躍
陽光下的小跳躍
CSS3旋轉跳躍的立方體
橫版平台跳躍類遊戲《WENJIA》即將上線WeGame
橫版跑酷遊戲《超級跳躍忍者》10月25日登陸SWITCH
MIT神奇3D列印材料 能跳躍、爬行、接球
新時代雲MOBA!跳躍網路最新力作300大作戰5G
《魔獸世界》8.2 疑似BUG?神器知識等級跳躍式提升
跳躍MOBA開山作《跳跳大咖》10月17日開測
華為P20 Pro評測:跳躍式升級不止徠卡三攝
雙人合作平台跳躍遊戲《按鈕按鈕》將登陸SWITCH
動漫之霸旋陀螺新時代:旋轉跳躍 陀螺戰士開啟新篇章
Steam99%好評新游推薦:遊戲性、劇情、音樂滿分的平台跳躍精品