test Blog
Happy living
首页
留言板
管理
Linux程序设计——用getopt处理命令行参数
修改 ubuntu 的3个画面
在Linux对终端的几个操作
老鼠
posted @ 2009年3月11日 02:01 in
linux
, 2828 阅读
当然,如果使用一些现有的库(比如 ncurses),本文就没什么信息量了,现在假设我们要自己造轮子。
获取终端的宽度和高度:
#include <sys/ioctl.h>
struct winsize sz;
程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛*E8G9K,C/X7_#k
ioctl (1, TIOCGWINSZ, &sz);
3o$z6k7o9S5?
printf ("Width=%d\n, Height=%d\n", (int)sz.ws_col, (int)sz.ws_row);
3w!m;f;H$f k8}
8h;~;D7b)Z8{9I%a
ioctl 的第一个参数 1 是要获得的终端的文件描述符(文件号),如果它指向的文件是终端以外的东西,ioctl 函数会失败。
. 显示/隐藏光标(这里看到的):用两个转义序列
"\033[?25l": 隐藏光标(最后面的是字母 l 不是数字 1)
"\033[?25h": 显示光标
3. 终端下的鼠标支持
TechWeb-技术社区5p:L1`)k2l9|.m+a2t$[1k1W8r
xterm 兼容的终端支持鼠标操作,默认情况下关闭,用控制序列 "\033[?1000h" 开启,用 "\033[?1000l" 关闭。
%n.V%T'| b-]2u2O2X
在启动鼠标报告模式以后,鼠标对终端有动作时(按下/释放鼠标键,滚动滚轮)时,从这个终端就可以读到六个字节的转义序列 [ M b x y。从 b 是可以得知现在的事件(按下/释放哪个鼠标键,滚轮向哪个方向滚动等),从 (x, y) 可以当前鼠标的位置。详情参见 "man console_codes"(页面搜索 mouse)
[取消回复评论]
昵称
登录
E-mail:
*
Web:
Twitter:
当有新评论通过 E-mail 通知我
(输入验证码)
or Ctrl+Enter
分类
生活琐碎
linux
web
编程相关
patch
Python
热门文章
深入Linux网络核心堆栈
.htaccess使用指南
国家或地区域名大全
python目录与文件操作(助记)
使用PyGTK和Glade创建用户界面
随机文章
在linux(Ubuntu)下安装subversion
在is-programer安家了~~
内核模块加载时的版本检查
编译linux2.6内核(fedora)的内核树,编译可以加载的内核模块
编写内核模块-虚地址转换为物理地址
功能
注册
登录
忘记密码?
文章 RSS
评论 RSS
留言 RSS
CopyRight
本博客采用
知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议
进行许可