HEADER控件
1、主要内容
HEADER控件基本使用方法
2、源码介绍
2.1、定义控件的初始值
hItem = WM_GetDialogItem(pMsg->hWin,ID_LISTVIEW_0);
hHeader = LISTVIEW_GetHeader(hItem);①
WM_SetFocus(hItem);②
HEADER_SetFont(hHeader,&GUI_FontFont_Micro_20);③
HEADER_SetHeight(hHeader, 25); ④
LISTVIEW_AddColumn(hItem, 120, “断电日期”, GUI_TA_HCENTER | GUI_TA_VCENTER);⑤
LISTVIEW_AddColumn(hItem, 120, “断电时间”, GUI_TA_HCENTER | GUI_TA_VCENTER);
LISTVIEW_AddColumn(hItem, 120, “来电日期”, GUI_TA_HCENTER | GUI_TA_VCENTER);
LISTVIEW_AddColumn(hItem, 120, “来电时间”, GUI_TA_HCENTER | GUI_TA_VCENTER);
LISTVIEW_AddColumn(hItem, 120, “记录号”, GUI_TA_HCENTER | GUI_TA_VCENTER);
LISTVIEW_SetBkColor(hItem,LISTVIEW_CI_SEL,GUI_WHITE);⑥
LISTVIEW_SetBkColor(hItem,LISTVIEW_CI_SELFOCUS,GUI_WHITE);
LISTVIEW_SetBkColor(hItem,LISTVIEW_CI_DISABLED,GUI_WHITE);
注解:①通过函数 LISTVIEW_GetHeader 获得列表控件中 header 控件的句柄
②将输入焦点设置到指定窗口
③选择指定字体
④设置控件的高度,这个是针对标题栏
⑤向 LISTVIEW 添加列
⑥设置背景颜色 LISTVIEW_CI_UNSEL 未选元素。LISTVIEW_CI_SEL 选定元素,不带焦点LISTVIEW_CI_SELFOCUS 选定元素,带焦点。LISTVIEW_CI_DISABLED 禁用元素。
2.2、列表数据刷新
for(u8_t i = 0;i <7;i++)
{
LISTVIEW_AddRow(hItem, NULL);①
LISTVIEW_SetItemTextColor(hItem,0,i,LISTVIEW_CI_DISABLED,WARN_BLACK_TEXT);②
LISTVIEW_SetItemTextColor(hItem,1,i,LISTVIEW_CI_DISABLED,WARN_BLACK_TEXT);
LISTVIEW_SetItemTextColor(hItem,2,i,LISTVIEW_CI_DISABLED,WARN_BLACK_TEXT);
LISTVIEW_SetItemTextColor(hItem,3,i,LISTVIEW_CI_DISABLED,WARN_BLACK_TEXT);
LISTVIEW_SetItemTextColor(hItem,4,i,LISTVIEW_CI_DISABLED,WARN_BLACK_TEXT);
}
LISTVIEW_SetFont(hItem, &GUI_FontFont_Micro_20);
LISTVIEW_SetHeaderHeight(hItem,40); ③
LISTVIEW_SetRowHeight(hItem,40);④
注解:①LISTVIEW_AddRow() 来新增一行,每调用一次,增加一行
② 设置 LISTVIEW 单元格的文本颜色
③ 设置标题的高度
④ 设置 LISTVIEW 的行高
2.3、LISTVIEW控件数据更新
for(i = 0; i < 7; i++)
{
sprintf(tmp_str,"%04d.%02d.%02d",data1_record[i],data2_record[i],data3_record[i]);①
LISTVIEW_SetItemText(WM_GetDialogItem(ui_power_record_hWin,ID_LISTVIEW_0),0,i,tmp_str;
sprintf(tmp_str,"%02d:%02d:%02d",data4_record[i],data5_record[i],data6_record[i]);
LISTVIEW_SetItemText(WM_GetDialogItem(ui_power_record_hWin,ID_LISTVIEW_0),1,i,tmp_str;
sprintf(tmp_str,"%04d.%02d.%02d",data7_record[i],data8_record[i],data9_record[i]);
LISTVIEW_SetItemText(WM_GetDialogItem(ui_power_record_hWin,ID_LISTVIEW_0),2,i,tmp_str;
sprintf(tmp_str,"%02d:%02d:%02d",data10_record[i],data11_record[i],data12_record[i]);
LISTVIEW_SetItemText(WM_GetDialogItem(ui_power_record_hWin,ID_LISTVIEW_0),3,i,tmp_str;
sprintf(tmp_str,"%d",data13_record[i] + 1);
LISTVIEW_SetItemText(WM_GetDialogItem(ui_power_record_hWin,ID_LISTVIEW_0),4,i,tmp_str;
}
注解:①设置由行和列所指定的 LISTVIEW 控件的单元格文本
原型:
void LISTVIEW_SetItemText(LISTVIEW_Handle hObj, unsigned Column, unsigned Row, const char * s);
参数 描述
hObj LISTVIEW 控件的句柄。.
Column 列号。
Row 行号。
s 要在表格单元格中显示的文本。