自己编的超低分辨率画板
  • 板块灌水区
  • 楼主吴明事
  • 当前回复12
  • 已保存回复12
  • 发布时间2021/11/27 21:39
  • 上次更新2023/11/3 23:25:12
查看原帖
自己编的超低分辨率画板
378914
吴明事楼主2021/11/27 21:39
#include<windows.h>
#include<iostream>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
void gotoxy(int x,int y) {
    COORD pos={x,y};
    HANDLE hOut= GetStdHandle(STD_OUTPUT_HANDLE);
    SetConsoleCursorPosition(hOut,pos);
}
void hide(){
	HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
	CONSOLE_CURSOR_INFO CursorInfo;
	GetConsoleCursorInfo(handle,&CursorInfo);
	CursorInfo.bVisible=false;
	SetConsoleCursorInfo(handle,&CursorInfo);
}
using namespace std;
int main() {
	hide();
	system("mode con cols=1000 lines=1000");
	POINT p;
	int x,y;
	string s="●";
	for(;;){
		CONSOLE_FONT_INFO a;
		GetCursorPos(&p);
		ScreenToClient(GetForegroundWindow(),&p);
		GetCurrentConsoleFont(GetStdHandle(STD_OUTPUT_HANDLE),FALSE,&a);
		x=p.x/a.dwFontSize.X;
		y=p.y/a.dwFontSize.Y;
		if(KEY_DOWN(' ')){
			if(x%2==1)x--; 
			gotoxy(x,y);
			cout<<s;
		}
		else if(KEY_DOWN('1'))s="●";
		else if(KEY_DOWN('2'))s="■";
		else if(KEY_DOWN('3'))s=". ";
		else if(KEY_DOWN('S'))system("cls");
    	else if(KEY_DOWN('R'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);
    	else if(KEY_DOWN('B'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE);
    	else if(KEY_DOWN('G'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
    	else if(KEY_DOWN('P'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE);
    	else if(KEY_DOWN('Y'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
    	else if(KEY_DOWN('C'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);
    	else if(KEY_DOWN('W'))SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE|FOREGROUND_GREEN);
	}
}

__适用于windows__*

用法

  • 按住空格画图
  • 按1切换画笔为●
  • 按2切换画笔为■
  • 按3切换画笔为 .
  • 按s清屏
  • 按g切换为绿色
  • 按r切换为红色
  • 按b切换为蓝色
  • 按y切换为黄色
  • 按p切换为紫色
  • 按c切换为青色
  • 按w切换为白色

初始默认画笔为●,白色。 可支持exe直接下载

2021/11/27 21:39
加载中...