C#-- 控制台操作
1、清空
Console.Clear()
2、窗口大小,缓冲区大小
注意:
(1)先设置窗口大小,再设置缓冲区大小
(2)缓冲区的大小不能小于窗口的大小
(3)窗口的大小不能大于控制台的最大 尺寸
// 窗口大小 Console.SetWindowSize(100,50) // 缓冲区大小(可打印内容区域的宽高,超过窗口的部分滑动进度条显示) Console.SetBufferSize(100,50)
还可以通过在控制台的属性进行控制
得到缓冲区的宽和高:
Console.BufferHeight; Console.BufferWidth;
3、设置光标的位置
控制台是一个以左上角为原点的坐标系,向右是x轴正方向,向下是y轴正方向
注意:
(1)边界问题(要在缓冲区范围内)
(2)横纵距离单位不同 1y = 2x, 视觉上的
Console.SetCursorPosition(0,1); Console.WriteLine("123"); // 此时第一行为空
4、设置颜色相关
注意:颜色修改之后的代码运行结果才会改变颜色,之前的不会改变
(1)文字颜色设置
Console.ForegroundColor = ConsoleColor.Red; Console.Writeline("123"); // 显示红色 Console.ForegroundColor = ConsoleColor.Red; Console.Writeline("123"); // 显示绿色
(2)背景颜色设置
Console.BackgroundColor = ConsoleColor.While; Console.Clear();
如果改变整个背景的颜色,需要在背景颜色设置之后添加清空指令
5、光标显隐
Console.CursorVisible = false
6、关闭控制台(调试模式下需要进行设置才能生效)
Environment.Exit(0);
7、练习题
在控制台中输入方块,并使用W,S,D,A对方块进行移动
namespace Test{class Program {static void Main(string[] args) {int windowWidth = 100, windowHeight = 30;int bufferWidth = 100, bufferHeight = 30;// 设置缓冲区大小Console.SetWindowSize(windowWidth, windowHeight);Console.SetBufferSize(bufferWidth, bufferHeight);// 控制台光标、背景颜色设置Console.CursorVisible = false;Console.BackgroundColor = ConsoleColor.Red;Console.Clear();Console.ForegroundColor = ConsoleColor.Black;//Console.SetCursorPosition(10, 20);//Console.Write("■");int x = 0;int y = 0;while (true) {char direction = Console.ReadKey(true).KeyChar;// Console.Clear();// 不直接 Clear 可以只对方框清空而不对其他固定元素造成影响Console.SetCursorPosition(x, y);Console.WriteLine(" ");switch (direction) {case 'A':case 'a':x -= 2;if (x < 0)x = 0;break;case 'W':case 'w':y -= 1;if (y < 0)y = 0;break;// 光标的位置坐标必须小于缓冲区,因此要进行边界处理case 'S':case 's':y += 1;if (y > Console.BufferHeight - 1)y = Console.BufferHeight - 1;break;case 'D':case 'd':x += 2;if (x > Console.BufferWidth - 2) // 横纵轴比例不同x = Console.BufferWidth - 2;break;default:break;}Console.SetCursorPosition(x, y);Console.WriteLine("■");Console.SetCursorPosition(90, 20);Console.WriteLine("({0},{1})", x, y);}}} }
C#-- 控制台操作相关推荐
- 鼠标同步桌面_[问题处理]XenCenter控制台操作通过MCS发布的虚拟机鼠标不同步
XenCenter控制台操作通过MCS发布的虚拟机鼠标不同步 问题描述 在XenCenter控制台里面操作通过Machine Creation Services(MCS)发布的虚拟机时会发现鼠标不同步 ...
- mysql控制台教程视频教程_mysql 控制台操作
一.连接mysql数据库 1.首先打开cmd进入dos窗口 2.切换至目录:D:\MySql5.0\mysql-5.0.51b-win32\bin(即:mysql安装目录下面的bin目录,该目录内有很 ...
- navicat for mysql打开控制台操作数据库
navicat for mysql打开控制台操作数据库 navicat for mysql打开控制台操作数据库 数据库操作 表格操作 索引操作 字段操作: 嵌套查询插入: Mysql切换调整字段顺序, ...
- MySQL_控制台操作_01
1. 163 博客 "/zclxy"中也有记录 MySQL的一些操作 2. 以下命令 来自 韩顺平 jdbc教程 " (1).参考 韩顺平 jdbc 第16讲 (1.1) ...
- 无图形界面下控制台操作Virtualbox
2019独角兽企业重金招聘Python工程师标准>>> 开机 VBoxManage startvm centos --type=headless 关机 VBoxManage cont ...
- mysql控制台操作
显示表结构 : show create table table_name 复制表:insert into table_name1 select * from table_name2 转载于:htt ...
- C++控制台操作(基本操作的代码)
控制台窗口界面编程控制 〇.摘要 一.概述 二.控制台文本窗口的一般控制步骤 三.控制台窗口操作 四.文本属性操作 五.文本输出 六.文本操作示例 七.滚动和移动 八.光标操作 九.读取键盘信息 十. ...
- android cmd 卸载,CMD 控制台操作卸载安装apk、卸载系统默认应用
adb设置 添加环境变量 添加一个名为"Android_adb"的系统变量(变量名随便只要上下一致即可),变量值就是你的sdk地址"C:\AndrodiStudioSDK ...
- 计算机联锁控制台操作演示,K5B计算机联锁控制台操作说明.doc
PAGE 4 一.概述 K5B计算机联锁设备采用单元式控制台,完成对站内设备的操作及状态显示.其操作和表示与6502电气集中控制台基本相同. 控制台上的按钮根据动作方式分为自复式和非自复式两种,根据使 ...
最新文章
- P2340 奶牛会展(状压dp)
- Go语言垃圾回收(GC)
- 【Python基础】Python初学者必须吃透这69个内置函数!
- CentOS下防御或减轻DDoS攻击方法(转)
- day32 管道, 数据共享, 进程池, 回调函数
- PC-用Windows XP自带的组策略加固操作系统
- sap客户主数据bapi_【SD系列】SAP SD模块-创建供应商主数据BAPI
- HDU 4968(杭电多校#9 1009题)Improving the GPA (瞎搞)
- 晨间日记模板 Web应用版 晨间日记软件 开源
- 人声歌姬语音合成器+拓展-Yamaha Vocaloid 5.0.3 + Libraries WiN 免安装版
- DBUtils和连接池的笔记和总结
- 严格模式 Strict Mode,与ES2020同步
- 如何检测android手机是否支持3g网络或者4g网络 源码,iOS中怎么判断当前网络环境是2G/3G/4G/5G/WiFi...
- Windows 提示“缺少所需的 CD/DVD 驱动器设备驱动程序”
- python怎么做表格_零基础小白怎么用Python做表格?
- ASCII码表和常见键盘码
- Google Dremel架构
- bp神经网络解决什么问题,BP神经网络的基本思想
- Python 生成图片验证码(详解)
- 前台debugger的使用
热门文章
- 笔记本有没有必要加内存条?
- Btspread Search Assistant的开发过程
- 苹果屏和android屏哪个更真实,苹果手机的屏幕,和安卓旗舰有何差距,苹果真的就是最棒的嘛?...
- 网吧管用之招(三)- 系统安装与调试备忘录(转)
- html6能代替原生app,网页转APP工具能否取代原生APP?这个在线制作平台,让移动开发更简单...
- 杭州电子科技大学acm---2009
- java的Date类的getYear(),getMonth()等函数过时
- 摩申网络2017年6月27日游戏新闻
- 构建基于Jenkins + Github的持续集成环境
- 解读:企微面向服务商进行平台收费模式调整的说明