客户端专用 表格操作类 CLuaGridUtil


使用说明

表格说明



void SetGrid(const string& sDialogName,const string &cid);
///如果表格控件在frame或map中, 使用该方法绑定对象
bool SetGridByFrameCID(const string& sDialogName, const string& sFrameCID, const string& sGridCID);

///使用ORM进行查询
int queryOrm(const string& sOrm,bool bLog=false);

///绑定ListView中的Grid对象, iPos为listview的索引号, gridCid为表格的cid
void SetListViewGrid(const string& sDialogName,const string& sListViewID, int iPos, const string &gridCid);

///移动垂直滚动条 到 某一行
void visualRow(int iRow);

///禁用启用 编辑 某一列
void EnableColName(const string& sColName, bool bEnable);

///删除清空表格所有数据
void deleteAll();

///删除某一行
void deleteRow(int iRow);
///删除当前选择的行
void deleteCurRow();

///删除所有数据内容,不删除列头, 与setRowCount(0)功能一样
void deleteAllRow();

///删除列,传入序号
void deleteCol(int iCol);
///删除列,传入列名
void deleteColByName(const string& sColName);


///设置行数
void setRowCount(int iCount);
///设置列数
void setColCount(int iCount);

///合并单元格,rowSpan:合并行数,colSpan:合并列数(与CLuaXlsxUtil方法中的setSpan后两个参数不一样)
void setSpan(int startRow, int startCol, int rowSpan, int colSpan);
///获取单元格合并的多少行
int getSpanRow(int iRow, int iCol);
///获取单元格合并的多少列
int getSpanCol(int iRow, int iCol);
///获取表格所有合并单元格的  列表
int getSpanHelp(CSelectHelp& help);

///表格总行数
int rowCount();
///表格总列数
int colCount();

//当前选择行
int    getSelectedRow();
///当前选择的列
int getSelectedCol();
///获取当前选择的所有单元格, help固定两列列名row, col
int getSelectedItems(CSelectHelp& help);
///设置某一列过滤内容, 与表头右键 过滤对应
bool setFilter(const string& colNames, const string& filterText);
///设置column_code
void setColumnCode(const string& sColunCode);
///获取列属性信息  也就是 表格列筛选 表的help
void getColumnsInfo(CSelectHelp& helpColumns);

///从CSelectHelp导入数据
void setHelp(CSelectHelp& help){ FromSelectHelp(help); };
///获取表格所有数据到help, help列名为setHelp的原始列名
void getHelp(CSelectHelp& help);

//增加一行 空行
void addRow();
///增加一行 CVector 的数据
void addRowByVect(CVector & value);
///在某行之前插入数据
void insertRow(int row);

///增加一列, iWidth为列宽
void addCol(const string& sDisplayName, int iWidth = 80);
///在某列之前插入一列
bool insertCol(int col, const string& sDisplayName, int iWidth = 80);

///获取列名
string getNameByCol(int iCol);
///设置列名
bool setColName(int iCol, const string& sDisplayName);
///根据列名获取列索引号
int getColByName(string sColumnName);

///设置 列宽度
void setColWidth(int iCol, int iWidth);
///返回 列宽
int  getColWidth(int column);

///设置行、列的可见性
void setColVisible(int nCol, bool bVisible);
///设置行、列的可见性
void setRowVisible(int nRow, bool bVisible);

///选择某行
void selRow(int iRow);
///选择某列
void selCol(int iCol);

///设置某一行 行高度, 如果设置默认行高使用setDefaultSectionSize
void setRowHeight(int row, int height);
///获取某行高度
int getRowHeight(int row);
///设置行默认高度
void setDefaultSectionSize(int height);

///更新视图
void update();

///设置单元格值  根据列名
void setValue(int iRow, const string& sColName, const string& sValue);
///设置单元格值  根据列索引号
void setValueByCol(int iRow, int iCol, const string& sValue);

///获取单元格内容 根据列名
string getValue(int iRow, const string sColumnName);
///获取单元格内容 根据列索引号
string getValueByCol(int iRow, int Col);

///获取当前选中行 某一列 的值
string getSelectedValue(string sField);

///获取选择行的数据到help
int getSelected(CSelectHelp& help);
///获取指定行的数据到help
int getValueByRow(int iRow, CSelectHelp& help);

///代理下拉框专用, 列已经设置setColComboDelegate, 返回下拉框选中的ID和Name, line[0]为ID  line[1]为name
bool getBoxValue(int iRow, int iCol, CVector& line);

///表格通用方法  导出所有数据到excel
bool exportToExcel(const string& fullPath = "");
///表格通用方法, 从excel导入到表格, 会覆盖原数据
bool importFromExcel(CSelectHelp& outExeclHelp, const string& fullPath = "");

///设置单元格 内容对齐方式 iHorizontal水平方向, iVertical垂直方向, 0 1 2对应左中右,上中下
void setItemAlign(int iRow, int iCol, int iHorizontal, int iVertical);
///设置单元格字体 大小  粗体  斜体  下划线   字体
void setItemFont(int iRow, int iCol, int iSize = 0, bool bBold = false, bool bI = false, bool bU = false, const string& sName = "");
///设置单元格内容颜色
void setTextColor(int iRow, unsigned int iCol, unsigned int iColor);
///按行设置单元格内容颜色
void setTextColorByRow(int iRow, unsigned int iColor);
///设置单元格背景色
void setBackground(int iRow, unsigned int iCol, unsigned int iColor);
///按行设置单元格背景色
void setBackgroundByRow(int iRow, unsigned int iColor);

///用于表格的增删改操作
bool execUpdate(CTNString& sInfo,const string& sParam="");

///用于表格的查询,小于0代表出错了,查询lastError
int query(const string& sql,const string& sParam = "");

///获取最新的错误日志,仅对execUpdate,query有效
string lastError();

//默认风格
void EasyStyle();

///根据数据大小自动适应表格
void AutoSize();

///设置表格编辑模式NoEditTriggers=0,CurrentChanged=1,DoubleClicked=2,SelectedClicked=4,EditKeyPressed=8,AnyKeyPressed=16,AllEditTriggers=31
void EnableEdit(int iEnable);

///是否允许多选
void EnableMultSelect(bool bEnable);

///是否显示最左侧的行号
void EnableSequence(bool bEnable);

///是否显示列头
void EnableHeader(bool bEnable);

///是否允许触发单元格值变化(谨慎使用) 单元格函数的形式为 function grid_cell_value_change(int iRow,int iCol) 
void EnableTrigerChange(bool bEnable);

///设置表格选中模式, 0代表选中单元格,1选中一行,2代表选中列
void SetSelMode(int iMode);

///启用禁用  点击列进行排序
void EnableClickSort(bool bEnable);

///选中下一个单元格
void selNextRecorde();
///选中上一个单元格
void selPreRecord();

///当前选择的行数据  与第一行交行
void moveToTop();
///当前选择的行数据  与下一行交行
void moveToNext();
///当前选择的行数据  与上一行交行
void moveToPrev();
///当前选择的行数据  与最后一行交行
void moveToBottom();

///设置某一单元格是否允许编辑
void setEnableEdit(int iRow, int iCol, bool bEnable);
///设置某一列是否允许编辑
void EnableCol(int iCol, bool bEnable);
///设置某一行是否允许编辑
void EnableRow(int iRow, bool bEnable);

///设置图片到 单元格, sPath为相对路径
bool setIconWidget(int iRow, int iCol, const string& sPath);
///设置日期控件到单元格
bool setDateWidget(int iRow, int iCol, const string& sValue);
///设置日期加时间控件到单元格
bool setDateTimeWidget(int iRow, int iCol, const string& sValue);
///设置时间控件到单元格
bool setTimeWidget(int iRow, int iCol, const string& sValue);

///设置下拉框控件到单元格
bool setComboWidget(int iRow, int iCol, CSelectHelp& help, const string& sField, const string& sVField, int iItemHeight = 30);
///设置复选框到单元格
bool setCheckWidget(int iRow, int iCol, bool bOK);

///设置某一列为下拉框控件
bool setColComboWidget(int iCol, CSelectHelp& help, const string& sField, const string& sVField);
///设置某一列为复选框
bool setColCheckWidget(int iCol);
///设置某一列为图片控件
bool setColIconWidget(int iCol);
///设置某一列为日期控件
bool setColDateWidget(int iCol);
///设置某一列为日期加时间控件
bool setColDateTimeWidget(int iCol);
///设置某一列为时间控件
bool setColTimeWidget(int iCol);

///设置从UI加载的代理类型
bool syncAgent();

///设置某列为代理模式 下拉框 控件, bEnable为启用编辑, inputSearch为是否启用数据, 1为启用数据,如果输入的数据不在下拉中,数据无效, 2为自定义输入,可以获取用户输入的自定义数据,itemHeight为下拉框内容高度
bool setColComboDelegate(int iCol, CSelectHelp& help, const string& sField, const string& sVField, bool bEnable = true, int inputSearch = 0, int itemHeight=-1);
///从系统缓存中的help加载代理下拉框控件(放弃使用)
bool setColSysComboDelegate(int iCol, const string& sHelpKey, const string& sField, const string& sVField, bool bEnable = true, int inputSearch = 0);
///设置列 为表格控件
bool setColCellGridDelegate(int iCol, CSelectHelp& help, bool bEnable = true);
///设置列 为树形控件
bool setColTreeDelegate(int iCol, CSelectHelp& help, bool bEnable = true);
///设置列 为复选框控件
bool setColCheckDelegate(int iCol, bool bEnable = true);
///设置列 显示数据前后修饰代理方法, 假如sPrefix为123,sSuffix为456, 单元格数据为abc, 界面上显示为123abc456, 实际获取出来的值还是原来的abc
bool setColFixDelegate(int iCol, const string& sPrefix, const string& sSuffix, bool bEnable = false);
///设置列 为进度条控件
bool setColProgressBarDelegate(int iCol, int iMin = 0, int iMax = 100);
///设置列 为输入框控件, 可改变所有代理模式控件的bEnable   (type默认为0,1为数字键盘,2为全键盘,只在终端有效)
bool setColEnableEditDelegate(int iCol, bool bEnable = true, int type = 0);
///设置列 为条码或者二维码控件 代理模式
bool setColBarCodeDelegate(int iCol, int code_type = 20);
///设置列 为选择图片代理模式方法
bool setColPhotoViewDelegate(int iCol, const string& defaultOpenPath = "", bool bEnable = true);
///设置列 为获取选择路径的方法 代理模式, 会出现选择路径对话框
bool setColGetFileDelegate(int iCol, int open_Save_Path, const string& title, const string& defaultFile, const string& fileType, bool bEnable = true);

///设置列 为日期控件 代理模式
bool setColDateDelegate(int iCol, bool bEnable = true);
///设置列 为时间控件 代理模式
bool setColTimeDelegate(int iCol, bool bEnable = true);
///设置列 为日期加时间控件 代理模式
bool setColDateTimeDelegate(int iCol, bool bEnable = true);

///按名称的代理控件  by eric
bool setColNameComboDelegate(const string& sColName, CSelectHelp& help, const string& sField, const string& sVField, bool bEnable = true, int inputSearch = 0, int itemHeight = -1);
bool setColNameSysComboDelegate(const string& sColName, const string& sHelpKey, const string& sField, const string& sVField, bool bEnable = true, int inputSearch = 0);
bool setColNameCellGridDelegate(const string& sColName, CSelectHelp& help, bool bEnable = true);
bool setColNameTreeDelegate(const string& sColName, CSelectHelp& help, bool bEnable = true);
bool setColNameCheckDelegate(const string& sColName, bool bEnable = true);
bool setColNameFixDelegate(const string& sColName, const string& sPrefix, const string& sSuffix, bool bEnable = false);
bool setColNameProgressBarDelegate(const string& sColName, int iMin = 0, int iMax = 100);
bool setColNameEnableEditDelegate(const string& sColName, bool bEnable = true, int type = 0);
bool setColNameBarCodeDelegate(const string& sColName, int code_type = 20);
bool setColNamePhotoViewDelegate(const string& sColName, const string& defaultOpenPath = "", bool bEnable = true);
bool setColNameGetFileDelegate(const string& sColName, int open_Save_Path, const string& title, const string& defaultFile, const string& fileType, bool bEnable = true);
bool setColNameDateDelegate(const string& sColName, bool bEnable = true);
bool setColNameTimeDelegate(const string& sColName, bool bEnable = true);
bool setColNameDateTimeDelegate(const string& sColName, bool bEnable = true);
Copyright © TouchNet 2015 all right reserved,powered by Gitbook最后修订时间: 2022-06-21 09:21:04

results matching ""

    No results matching ""