C語言遊戲必備:游標定位與顏色設定的實現方法

來源:互聯網
上載者:User

喜歡編寫遊戲的朋友們,你們有福了,這個資料足以讓你玩轉WINDOWS和Linux下的游標定位以及顏色,enjoy it。

一、WINDOWS:
1.游標定位函數:

複製代碼 代碼如下:#include <windows.h>
#include <conio.h>
/****** 游標移到指定位置 ********************************/
void gotoxy(HANDLE hOut, int x, int y)
{
COORD pos;
pos.X = x; //橫座標
pos.Y = y; //縱座標
SetConsoleCursorPosition(hOut, pos);
}
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);//定義顯示器控制代碼變數
gotoxy(hOut,20,30); //游標定位在座標(20,30)

2.顏色控制:
2.1函數實現複製代碼 代碼如下:/******設定文本為綠色 ********************************************/
void Set_TextColor_Green (void)
{
HANDLE Handle = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(Handle, FOREGROUND_INTENSITY | FOREGROUND_GREEN);
}

2.2 system
system("color 0D");//設定文本為粉紅色
註:1.0-15為16種顏色。
2.0D中0為背景顏色,D為字型顏色。
3.清屏
system("cls");

二、Linux:
在linux/unix的字元介面下,可以利用一些控制符來定位顯示位置、控制顏色、清屏等。
printf("\033[47;31mhello world\033[5m");
47是字背景顏色, 31是字型的顏色, hello world是字串. 後面的\033[5m是控制碼.
顏色代碼:
QUOTE:
字背景色彩範圍: 40--49 字顏色: 30--39
40:黑 30:黑
41:紅 31:紅
42:綠 32:綠
43:黃 33:黃
44:藍 34:藍
45:紫 35:紫
46:深綠 36:深綠
47:白色 37:白色
ANSI控制碼:
QUOTE:
\033[0m 關閉所有屬性
\033[1m 設定高亮度
\03[4m 底線
\033[5m 閃爍
\033[7m 反顯
\033[8m 消隱
\033[30m -- \033[37m 設定前景色彩
\033[40m -- \033[47m 設定背景色
\033[nA 游標上移n行
\03[nB 游標下移n行
\033[nC 游標右移n行
\033[nD 游標左移n行
\033[y;xH設定游標位置
\033[2J 清屏
\033[K 清除從游標到行尾的內容
\033[s 儲存游標位置
\033[u 恢複游標位置
\033[?25l 隱藏游標
\33[?25h 顯示光線標

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.