简单ListCtrl
来源:互联网 发布:天刀win10卡顿优化 编辑:程序博客网 时间:2024/05/17 05:00
InitCommonControls();
InitContextMenuManager();
InitShellManager();
CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerOffice2007));
CMFCButton::EnableWindowsTheming();
class CMyListCtrl : public CMFCListCtrl
{
virtual COLORREF OnGetCellTextColor(int nRow, int nColum);
virtual COLORREF OnGetCellBkColor(int nRow, int nColum);
virtual HFONT OnGetCellFont(int nRow, int nColum, DWORD dwData = 0);
virtual int OnCompareItems(LPARAM lParam1, LPARAM lParam2, int iColumn);
public:
BOOL m_bColor;
BOOL m_bModifyFont;
};
COLORREF CMyListCtrl::OnGetCellTextColor(int nRow, int nColum)
{
if (!m_bColor)
{
return CMFCListCtrl::OnGetCellTextColor(nRow, nColum);
}
return(nRow % 2) == 0 ? RGB(128, 37, 0) : RGB(0, 0, 0);
}
COLORREF CMyListCtrl::OnGetCellBkColor(int nRow, int nColum)
{
if (!m_bColor)
{
return CMFCListCtrl::OnGetCellBkColor(nRow, nColum);
}
if (m_bMarkSortedColumn && nColum == m_iSortedColumn)
{
return(nRow % 2) == 0 ? RGB(233, 221, 229) : RGB(176, 218, 234);
}
return(nRow % 2) == 0 ? RGB(253, 241, 249) : RGB(196, 238, 254);
}
HFONT CMyListCtrl::OnGetCellFont(int nRow, int nColum, DWORD /*dwData* = 0*/)
{
if (!m_bModifyFont)
{
return NULL;
}
if (nColum == 2 &&(nRow >= 4 && nRow <= 8))
{
return afxGlobalData.fontDefaultGUIBold;
}
return NULL;
}
int CMyListCtrl::OnCompareItems(LPARAM lParam1, LPARAM lParam2, int iColumn)
{
CString strItem1 = GetItemText((int)(lParam1 < lParam2 ? lParam1 : lParam2), iColumn);
CString strItem2 = GetItemText((int)(lParam1 < lParam2 ? lParam2 : lParam1), iColumn);
if (iColumn == 0)
{
int nItem1 = _ttoi(strItem1);
int nItem2 = _ttoi(strItem2);
return(nItem1 < nItem2 ? -1 : 1);
}
else
{
int iSort = _tcsicmp(strItem1, strItem2);
return(iSort);
}
}
m_wndList.m_bColor = TRUE;
m_wndList.m_bModifyFont = TRUE;
m_wndList.SetRedraw(FALSE);
m_wndList.InsertColumn(0, _T("#"), LVCFMT_LEFT, 20);
m_wndList.InsertItem(i, str);
m_wndList.SetItemData(i, i);
m_wndList.SetItemText(i, nColumn, str);
m_wndList.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
m_wndList.EnableMarkSortedColumn();
m_wndList.SetRedraw(TRUE);
m_wndList.Invalidate();
m_wndList.UpdateWindow();
CString str = m_wndList.GetItemText(pNMItemActivate->iItem, 0);
str = m_wndList.GetItemText(pNMItemActivate->iItem, 1);
str = m_wndList.GetItemText(pNMItemActivate->iItem, 2);
CString str = m_wndList.GetItemText(m_wndList.GetNextItem(-1,LVNI_SELECTED),0);
char sBuf[255];
LVCOLUMN cl;
cl.mask = LVCF_TEXT;
cl.pszText = sBuf;
cl.cchTextMax = 255;
m_wndList.GetColumn(phdr->iItem, &cl);
CString s = cl.pszText;
- 简单ListCtrl
- ListCtrl控件的简单使用
- ListCtrl控件的简单使用
- wx.ListCtrl简单使用例子
- ListCtrl
- ListCtrl
- listctrl
- ListCtrl
- listctrl
- listctrl
- VC LISTCTRL控件的简单使用
- ListCtrl 锁定列宽度的简单方法
- ListCtrl使用指南
- ListCtrl使用指南
- ListCtrl使用指南
- ListCtrl使用指南
- ListCtrl使用指南
- ListCtrl使用指南
- 用System.Drawing.Drawing2D画刷动态画饼形图
- 向着第二层 第一阶段第十八天
- 各种常用sql
- 各种时间格式化
- 简单数据库操作
- 简单ListCtrl
- 其它常用
- 没有完美的人所有才没有完美的机器
- 先进制造视频集
- Qt应用静态编译,静态链接,去mingwm10.dll,libgcc_s_dw2-1.dll依赖问题
- JAVA执行脚本
- WPE软件为什么现在不能刷传奇天关
- linux帮助的使用
- linux的文件系统