当前位置:早雪网网络学院编程文档C/C++ → UNIX下c语言的图形编程--curses.h 函式库

UNIX下c语言的图形编程--curses.h 函式库

减小字体 增大字体 作者:不详  来源:supcode.com收集整理  发布时间:2005-7-22 19:39:36
R 键被按下
     */

                   ++y;
                   x=0;
                   break;
         case '\t':                    /* 判断是否 TAB 键被按下
     */

                   x+=7;
                   break;
         case 127:                     /* 判断是否 BACKSPACE 键被按下
     */

                    mvaddch(y,--x,' ');/* delete 一个字元
     */

                    break;

         case 27: endwin();            /* 判断是否[ESC]键被按下
     */

                  exit(1);             /* 结束 curses 模式
     */

                                       /* 结束此程式
     */


         default:
                  addch(ch);           /* 如果不是特殊字元, 将此字元印
出     */

                  x++;
                  break;
       }
       move(y,x);                      /* 移动游标至现在位置
     */

     } while (1);
   }

  void initial()                       /* 自定开启 curses 函式
     */

  {
      initscr();
      cbreak();
      nonl();
      noecho();
      intrflush(stdscr,FALSE);
      keypad(stdscr,TRUE);
      refresh();
   }



 ■ 後记

   学完了上述的一些命令,  相不相信您已经可以写出一个漂亮的全萤幕编辑
   器了? 事实上, curses 提供的函式不下  200 个, 可是笔者认为, 一切再
   复杂的函式都可以用本文提到的一些组合变化而成,  学了太多的函式, 只
   是徒增自己困扰罢了.  当然,  如果您对其它函式有兴趣,  可以自行参阅
   curses 说明档.  ( 方法: % man curses ) 本文不过行抛砖引玉之效, 也
   希望未来能陆续出现更多同学自行创作的程式.

    * 任何疑问及建议, 欢迎 e-mail 至 ljh@CCCA.NCTU.edu.tw. 谢谢 ! *



注一:
    请参考 /usr/share/lib/termcup
           /usr/share/lib/terminfo/s/sun

注二:
    1.如果是 BSD 的版本, 需使用
      cc [file.c] -lcurses -ltermcap 来完成 compile.
    2.计中工作站不知何故将原来的 /usr/5bin/cc 更改为 /usr/5bin/cc.org

      因此, 您若想在计中工作站 compile curses 程式.需以 /usr/5bin/cc.
org
      取代 /usr/5bin/cc , 否则 compile 可能发生错误.
    3.较旧版的 curses 需同时引进 curses 和 termlib 这两个 library,
      因此, 您必须使用 /usr/5bin/cc [file.c] -lcurses -ltermlib 来
compile.

注三:
     根据笔者的经验, 上下左右方向键应可正常使用而不会发生问题, 但其它

     如 PgUp,PgDn,功能键,Home,End 等特殊键, 很容易因机器, 键盘不同而无

     法使用, 因此, 若您的程式须要在不同的机器上使用, 建议您只用方向键来

     控制, 其它的特殊键少用为妙.
     至於 PgUp,PgDn 一些特殊键的控制方法, 由於较为复杂, 有兴趣的同学可

     考 tin 原始程式 curses.c 内所使用的一些方法.

上一页  [1] [2] [3] 

[数据载入中...] [返回上一页] [打 印]