在c++控制台程序下怎么用键盘方向键控制图标上下移动

已举报 回答 关注

在c++控制台程序下怎么用键盘方向键控制图标上下移动

  • 回答数

    10

  • 浏览数

    9,328

10个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
  可以用gotoxy函数移动光标。
  1、函数名:gotoxy
  原型:extern void gotoxy(int x, int y);
  用法:#include <system.h>
  功能:将光标移动到指定位置说明:gotoxy(x,y)将光标移动到指定行y和列x。设置光标到文本屏幕的指定位置,其中参数x,y为文本屏幕的坐标。
  gotoxy(0,0)将光标移动到屏幕左上角
  2、例程:
  //这个例子将在屏幕中央输出“hello world”
  #include <stdio.h>
  #include <conio.h>
  #include <system.h>
  int main(){
  clrscr();
  gotoxy(35, 12);
  cputs("Hello world");
  getch();
  return 0;
  }
取消 评论
属性-应用程序里-资源-图标和清单
取消 评论
我刚学C#哪对哪都不知道啊 头疼 不会啊 也没人教!
取消 评论
帮做,50微信红包就可以
取消 评论
点击项目属性,在第一个应用程序的页签上有一个图标和清单哪里,选择一个图标,确定后,重新生成就好
取消 评论
从键盘输入的语句scanf函数语句C语言输入是最常用的函数原型INT scanf函数(字符*格式的args,...);功能是从标准输入设备格式串的格式指向由格式所规定的输入数据点到的args单元。 C ++,您可以通过两种方式使用scanf函数语句和CIN(标准输入流)。霉素是从键盘向数据流的存储器流从与>>操作者输入的CIN流输入设备键盘获得数据的标准输入流。
取消 评论
项目右击属性-应用程序-资源-图标
取消 评论
KeyDown 和 KeyUp 事件

KeyUp 和 KeyDown 事件报告键盘本身准确的物理状态:按下键 (KeyDown) 及松开键 (KeyUp)。与此成对照的是,KeyPress 事件并不直接地报告键盘状态— 它只提供键所代表的字符而不识别键的按下或松开状态。

进一步举例将有助于阐明这一差别。输入大写 "A" 时,KeyDown 事件获得 "A" 的 ASCII 码。在输入小写 "a" 时,KeyDown 事件获得相同的 ASCII 代码。为区分大小写,这些事件使用 shift 参数。与此相对照的是,KeyPress 事件将字母的大小写作为两个不同的 ASCII 字符处理。

KeyDown 和 KeyUp 事件通过提供下列两参数返回输入字符的信息。

参数 描述
Keycode 指示按下的物理键。这时将 "A" 与 "a" 作为同一个键返回。它们具有相同的 keycode 值。但是请注意,键盘上的“1”和数字小键盘的“1”被作为不同的键返回,尽管它们生成相同的字符。
Shift 指示 SHIFT、CTRL 和 ALT 键的状态。只有检查此参数才能判断输入的是大写字母还是小写字母。

Keycode 参数
keycode 参数通过 ASCII 值或键代码常数来识别键。字母键的键代码与此字母的大写字符的 ASCII 值相同。所以 "A" 和 "a" 的 keycode 都是由 Asc("A") 返回的数值。在下例中用 KeyDown 事件判断是否按下了 "A" 键:

Private Sub Text1_KeyDown(KeyCode As Integer, _
Shift As Integer)
If KeyCode = vbKeyA Then MsgBox "You pressed _
the A key."
End Sub

按下 SHIFT + "A" 或只按下 "A" 后都将显示消息框— 也就是说,对每种情况,参数都是正确的。为判断按下的字母是大写形式还是小写形式需使用 shift 参数。请参阅本章后面的“Shift 参数”主题。

数字与标点符号键的键代码与键上数字的 ASCII 代码相同。因此“1”和“!”的 keycode 都是由 Asc("1") 返回的数值。同样,为检测“!”,需使用 shift 参数。

KeyDown 和 KeyUp 事件可识别标准键盘上的大多数控制键。其中包括功能键 (F1-F16)、编辑键(HOME、PAGE UP、DELETE 等等)、定位键(RIGHT、LEFT、UP 和 DOWN ARROW)和数字小键盘上的键。可以通过键代码常数或相应的 ASCII 值检测这些键。例如:

Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)
If KeyCode = vbKeyHome Then MsgBox "You pressed the HOME key."
End Sub

详细信息 关于字符代码的完整列表,请参阅“语言参考”的的“字符集 (0–127)”和“字符集 (128–255)”。“键代码常数”提供了键代码常数与对应的 ASCII 值的完整列表,也可通过“对象浏览器”并搜索 KeyCodeConstants 获得此列表。
取消 评论
加载全部10个答案 加载中...
ZOL问答 > 键盘 > 其他分类 > 在c++控制台程序下怎么用键盘方向键控制图标上下移动

特惠推荐

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

提示

确定要取消此次报名,退出该活动?