📄 guilist.h
字号:
#pragma once
#include "GUI.h"
//列文本对齐模式
enum LISTTEXTALIGN
{
LISTTEXTALIGN_LEFT = 0, //左对齐
LISTTEXTALIGN_CENTER = 1, //置中
LISTTEXTALIGN_RIGHT = 2 //右对齐
};
class GUIList :
public GUI
{
public:
GUIList(void);
~GUIList(void);
protected:
int m_nColLimit; //每项中最多拥有多少列
float m_fRowDistance; //每项文本显示的高度范围
vector<float> m_fColDistance; //每列文本显示的宽度范围
vector<BYTE> m_nTextAlignType; //每列文本对齐方式
vector<string> m_nColTitleText; //每列的标题文本
vector<struct st_ListItem*> m_pListItemArray; //全部项数据
vector<class GUIListColData*> m_pTitleItemArray; //标题项数据
GUIPoint m_ptScrollPos; //所有项的起始位置
DWORD m_dwColor; //普通状态显示的颜色
DWORD m_dwSelColor; //被选择状态显示的颜色
DWORD m_dwTitleColor; //标题栏文本颜色
int m_nSelectLine; //当前被选择的行
float GetCurColPos(int col); //获得指定列的起始位置
public:
bool CreateGUIList(char* name,float width,float height,int collimit,float rowdistance,char* titleback,GUI* pParent);
void SetListTextColor(DWORD color,DWORD selcolor,DWORD titlecolor); //设置列表框文本颜色
bool SetRowDistance(float dis); //设置行高
bool SetColDistance(int col,float dis); //设置列宽
bool SetTextAlignType(int col,BYTE type=0); //设置文本对齐方式
void SetScrollPosX(float x); //上下滚动列表框内容
void SetScrollPosY(float y); //左右滚动列表框内容
int GetListCount();
public:
int InsertItem(string text); //插入一项数据,参数内容为该行的首列文本
bool DeleteItem(int row); //删除某行的数据
void DeleteAllItem(); //删除所有项
bool SetItemColText(int row,int col,string text); //设置某项某列的文本内容
string GetItemColText(int row,int col); //获得某行某列的文本内容
void SelectLine(int nLine); //选择行
float GetGUIListWidth();
float GetGUIListHeight();
bool SetTitleColText(int col,string text); //设置标题某列的文本内容
public:
virtual void Render();
virtual void OnChildMessage(GUI* pChildGUI,UINT iMsg, WPARAM wParam, LPARAM lParam);///子对象发送了命令请求
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -