?? lmenu.cpp
字號:
#include <lutils.h>
#include <lkey.h>
TMenu::TMenu(short max)
{ form=0; result=0; num=0; win[0]=win[1]=0; win[2]=win[3]=100;
color[0]=10; color[1]=255; dy=20;
list=new char*[max];
}
TMenu::~TMenu() { delete list; }
short TMenu::choice()
{ short i,j=0,c,done=0,key=0;
lActiveSurface(NULL);
while (!done)
{ for (i=0,j=win[1]+8;i<num;i++,j+=dy) { c=color[0];
if (result==i) c=color[1];
lsetColor(c); louttextxy(win[0],j,list[i]);
}
key=0; while (lkbhit());
while (!key) {
if (lKeyOn(KEY_UP)) key=1; if (lKeyOn(KEY_DOWN)) key=2;
if (lKeyOn(KEY_ENTER)||lKeyOn(KEY_SPACE)||lKeyOn(KEY_CTRL)) key=3;
}
switch (key)
{ case 1: if (--result<0) result=num-1; break;
case 2: if (++result>=num) result=0; break;
case 3: done=1; break;
}
}
lActiveSurface(NULL);
return 1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -