📄 listview.h
字号:
#include "commctrl.h"
//显示台类,用以将车间信息显示
class ListShow
{
protected :
// COLORREF font_color ;
public :
HWND hWnd ; //窗口句柄
int column_num ; //显示台显示台列数目
int item_num ; //显示台显示台行数目
ListShow ( ) ; //显示台初始化
void SetHWND ( HWND h ) ; //赋予显示台窗口句柄
//加入列项,项名为:text,长度最大值为len,加入位置在pos,默认显示长度为70(像素)
void AddColumn ( char * text , int len , int pos = 0 , int width = 70 ) ;
//创建一个新行,新行的第一个列项内容为text,长度最大值为:len,pos在本次程序不使用,默认为0
//而且pos必须默认为0,不能使用其他值
void AddFirstItem ( char * text , int len , int pos = 0 ) ;
//删除第pos+1列
void DelColumn ( int pos = 0 ) ;
//删除第pos+1行
void DelItem ( int pos = 0 ) ;
//修改某一项的值,使其为长度为len的text,pItem指定所在行,pos指定所在列
void AddValueItem ( char * text , int len , int pItem = 0 , int pos = 1 ) ;
};
void ListShow ::SetHWND ( HWND h )
{
hWnd = h ;
}
ListShow ::ListShow ( )
{
// font_color = RGB ( 0 , 0 , 0 ) ;
column_num = 0 ;
item_num = 0 ;
}
void ListShow ::AddColumn ( char * text , int len , int pos , int width )
{
LVCOLUMN lvc;
// Initialize the LVCOLUMN structure.
// The mask specifies that the format, width, text, and subitem
// members of the structure are valid.
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
//设置显示位置
lvc.iSubItem = pos ;
//设置显示文本
lvc.pszText = text ;
lvc.fmt = LVCFMT_CENTER ; // right-aligned column
lvc.cx = width ; // width of column in pixels
if ( ListView_InsertColumn ( hWnd, pos, &lvc ) == -1 )
return ;
column_num++ ;
}
void ListShow ::AddFirstItem ( char * text , int len , int pos )
{
/*
if ( pos % 2 != 0 )
font_color = RGB ( 255 , 0 , 0 ) ;
else
font_color = RGB ( 0 , 0 , 0 ) ;*/
// Initialize LVITEM members that are common to all items.
LVITEM lvI ;
lvI.mask = LVIF_TEXT | LVIF_STATE | LVIF_PARAM ;
lvI.state = 0;
lvI.stateMask = 0;
// Initialize LVITEM members that are different for each item.
lvI.iItem = pos ; //设置位置
lvI.iSubItem = 0 ;
lvI.pszText = text; //设置文本
if ( ListView_InsertItem ( hWnd , &lvI) == -1)
return ;
item_num ++ ;
}
void ListShow::DelColumn ( int pos )
{
if ( ListView_DeleteColumn ( hWnd , pos ) == -1 )
return ;
column_num -- ;
}
void ListShow ::DelItem ( int pos )
{
if ( ListView_DeleteItem ( hWnd, pos ) == -1 )
return ;
item_num -- ;
}
void ListShow ::AddValueItem ( char * text , int len , int pItem , int pos )
{
ListView_SetItemText( hWnd , pItem , pos , text );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -