C语言实现一个Window控制台带彩色,且可以用方向键选择并确认的菜单式列表(一)
在Linux的编程里,管理列表的形式,我们可以使用VT100控制码来进行实现。因为VT100控制码在printf函数中就可以设置显示的行和列,这样实现一个列表选择的GUI界面就非常容易。比如Linux内核中的Make menuconfig。
我们可以看到像下面这样的GUI菜单式界面,这样的界面用Linux VT100控制码结合C语言是很容易就可以实现出来的。
那么,在Window上想要在控制台实现类似的功能,是否也可以做到呢?当然是可以的,Window控制台同样提供了实现这样的函数给开发者来进行使用。说到选择,那么选择就有上下左右四个方向,可以用键盘上的上下左右来进行控制选择。
如何读取对应的键值码呢?我们可以使用C语言的getch()函数获取。通过参考百度百科:https://baike.baidu.com/item/getch()/10996394
我们知道getch()的用法如下:
getch():
所在头文件:conio.h
函数用途:从控制台读取一个字符,但不显示在屏幕上
函数原型:int getch(void)
返回值:读取的字符
例如:
char ch;或int ch;
getch();或ch=getch();
用getch();会等待你按下任意键,再继续执行下面的语句;
用ch=getch();会等待你按下任意键之后,把该键字符所对
C语言实现一个Window控制台带彩色,且可以用方向键选择并确认的菜单式列表(一)相关推荐
- Verilog实现一个8位带进位全加器
项目简介: 用Verilog语言实现一个8位带进位全加器.顶层采用结构描述的方法用8个1位全加器来实现一个8位带进位全加器,底层的1位全加器采用行为描述的方法来实现. 代码实现: /*-------- ...
- C语言Window控制台实现弹弹方块(单个方块,多个方块)
前面,我们用C语言实现了列表时的学生信息管理系统,那么,window控制台还能做什么好玩的东西呢? http://blog.csdn.net/morixinguan/article/details/7 ...
- 运用HashMap和ArrayList打造一个简单的带文件的控制台学生管理系统(附上类及类方法的思维导图+控制台运行界面截图+源代码)
文章目录: 一.本文由来 二.适合人群 三.类及类方法思维导图 四.控制台运行界面截图 五.项目源代码链接 六.后记 七.再回首 一.本文由来 今天是2020年1月23日.因为在2019年上半学期Ja ...
- [C语言] 制作一个控制台的电子时钟
使用c语言制作一个控制台的电子时钟 学习了c语言基本语法后,在学习了time.h的库文件,让我产生了想制作一款电子时钟的念头,那好就开始动手操作吧. 使用到下面这些技术: 首先必须先导入库 /**** ...
- C语言下拉式菜单做出字体小,C语言下拉菜单设计-带源代码.ppt
<C语言下拉菜单设计-带源代码.ppt>由会员分享,可在线阅读,更多相关<C语言下拉菜单设计-带源代码.ppt(30页珍藏版)>请在人人文库网上搜索. 1.C语言下拉菜单程序设 ...
- 怎样学好C语言,一个成功人士的心得!
今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email,一部电影都是用一连串的 ...
- 让shell终端和goland控制台输出彩色的文字
让shell终端和goland控制台输出彩色的文字 版权声明:本文为 Elonjelinek 原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https ...
- 使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)
使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网) 一,前期准备 1,Java IDE(Eclipse)与JDK的安装与配置 jdk-15.0.1-免配置路径版 提取码:earu 免 ...
- 如何学好C语言,一个成功人士的心得!
来源URL:http://blog.csdn.net/yxnk/article/details/5976699/ 今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克 ...
最新文章
- 等待多个并发事件完成的模型
- [pytorch、学习] - 4.4 自定义层
- jacascript AJAX 学习
- ADO.Net中DataSete的应用
- 字符串匹配——C++使用Regex
- shell学习之突发奇想 ^_^ 打印9*9乘法表
- excel随机抽取_Python自制班级点名器让Excel表格用起来
- LaTeX(2)——LaTeX文档基本结构
- Vista下调整硬盘分区大小的方法
- oracle mysql 推荐书籍
- 三菱q系列plc连接电脑步骤_三菱plc连接电脑步骤
- Mac 电脑锁屏快捷方法
- 怎么利用企业微信营销 企业微信如何营销 企业微信如何维护好友 企业微信如何开通
- Python数据分析与处理(例题)
- 【科研】浅学Cross-attention?
- 编译安装Memcached
- 无线调试和unable to connect to 192.168.2.245:5555由于目标计算机积极拒绝,无法连接。 (10061)
- oracle 12.1.0.2版本对象ku$_user_view是失效状态的修复
- 从字节跳动投资互动百科,看搜索的形与神
- 第5章 Redis新类型
热门文章
- java char与int互相转换
- 【MYSQL的QA】
- 词向量与词向量拼接_中文字词向量和方面词向量联合嵌入情感分析方法与流程...
- How to identify – and avoid – travel photo ‘porn’
- exp()近似计算,exp快速算法,C语言实现exp
- VC GDI+ 字体的特效
- intellij最常用的快捷键和快速输入技巧
- 咨询问题?散光加近视怎么办?
- 模拟常见软件微信、钉钉、企业微信、飞书、淘宝、支付宝 的User Agent
- linux下mkdirs方法乱码,linux 解压zip中文乱码问题