📄 list.h
字号:
#ifndef __LIST.H__
#define __LIST.H__
#include "State.h"
#include "Key.h"
#include "Const.h"
#include "Type.h"
class List
{
public:
enum ListConst
{
// 标题的最大长度
MaxLenOfTitle = 10,
// 最大列表元素数
MaxItem = 100,
// 列表元素最大长度
MaxLenOfItem = 15,
// 列表元素信息的最大长度
MaxLenOfMessage = 75
};
private:
// 列表的左上角坐标
int x0;
int y0;
// 列表的右下角坐标
int x1;
int y1;
// 首行序号
int HeadLine;
// 垂直滚动条游标位置
int VerticalPos;
// 标题
char Title[MaxLenOfTitle];
// 列表元素总数
int TotItem;
// 列表元素结构
struct ItemType
{
// 列表元素名
char Name[MaxLenOfItem];
// 列表元素说明信息
char Message[MaxLenOfMessage];
// 列表元素被选择标志
bool Chosen;
} Item[MaxItem];
// 文本前景色
int TextForeground;
// 文本背景色
int TextBackground;
// 边框前景色
int FrameForeground;
// 边框背景色
int FrameBackground;
public:
List(const int, const int, const int, const int);
~List();
// 设置标题
void SetTitle(const char []);
// 设置颜色
void SetColor(const int, const int, const int, const int);
// 添加列表元素
void Add(const char [], const char []);
// 显示列表
void Show();
// 由用户选择列表元素
int Work();
// 对列表元素进行排序
void Sort();
// 激活列表元素
void Active(const int);
// 隐藏列表元素
void Inactive(const int);
// 重新打印元素列表
void Refresh();
// 隐藏列表
void Hide();
// 清空列表元素
void Clear();
// 滚动处置滚动条游标
void ScrollVertical(const int);
// 返回列表顶部行号
inline int Top() {return x0;}
// 返回列表左侧列号
inline int Left() {return y0;}
// 返回列表底部行号
inline int Bottom() {return x1;}
// 返回列表右部列号
inline int Right() {return y1;}
// 返回列表文本区高度
inline int High() {return x1 - x0 - 3;}
// 返回元素名
inline char *ItemName(const int No) {return Item[No].Name;}
};
// List类需要调用的外部函数
extern void SetColor(const int,const int);
extern void PrintChar(const int,const int,const char);
extern void Receive(int &);
extern void PrintLine(const int);
// List类需要引用的外部变量
extern int x0;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -