自己写了一个继承CListView类的视图,然后以Progman的子窗口 SHELL_DefView 为父窗口,就是想做一个类似桌面的东东啦,想以大图标的格式显示图标,但是图标总是显示不上去,不晓的咋回事,高手们帮忙解决下吧
解决方案 »
- duilib如何兼容MFC?
- CImageList变量怎么样删除?
- 如何获取程序当前运行路径
- 关于MFC的ISAPI
- 高分求教如何实现状态栏上的按钮(类似FOXMAIL)。
- 装msdn后帮助文件打开全成英文菜单的帮助文件了
- 再问 VC自动化编译,希望有高人相助
- 典型问题:操作两个表的SQL语句怎么写呢?SELECT * FROM Friend where nUserID = (SELECT ID FROM User WHERE key='a423-543-ffaw')
- 怎样把视图中取得的字符串用提示条(象VC中那样)显示出来。
- 请大家帮忙想个网络传输的解决方案
- 运行windows核心编程(第5版)的源码后没有运行界面
- 字符串运算符重载在VC与VS里面的区别
{
public:
CThumbItem();
virtual ~CThumbItem();public:
CString m_sFileName;
CString m_sDescription;
CBitmap *m_pBitmap;
DWORD m_dwDspMask;
};CThumbItem::CThumbItem()
{
m_dwDspMask = 0;
m_pBitmap = NULL;
m_sFileName.Empty();
m_sDescription.Empty();
}CThumbItem::~CThumbItem()
{
if(m_pBitmap != NULL)
{
delete m_pBitmap;
m_pBitmap = NULL;
}
}
///////////////////////////////
BOOL CListCtrlLoadImageDlg::OnInitDialog()
{
...
CString path = "E:\\my sample\\ListCtrlLoadImage\\res\\te1st.bmp";
HBITMAP bitm= m_List.LoadPicture(path);
m_pItem = new CThumbItem;
m_pItem->m_pBitmap = NULL;
m_pItem->m_pBitmap = new CBitmap();
if (bitm!=NULL)
{
m_pItem->m_pBitmap->Attach(bitm);
}
///////////////////////////////////
m_List.xInsertThumbItem(m_pItem);
...
}
BOOL CListImageCtrl::xInsertThumbItem(CThumbItem* pThumbItem)
{
if(pThumbItem == NULL)
return FALSE;
LV_ITEM lvItem;
ZeroMemory(&lvItem, sizeof(LV_ITEM));
lvItem.mask = LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;// | LVIF_TEXT;
lvItem.iItem = GetItemCount();
lvItem.iSubItem = 0;
lvItem.state = 0;
lvItem.lParam =(LPARAM)pThumbItem;
InsertItem(&lvItem); return TRUE;
}
m_imLarge.Add(so.hIcon);
我是用系统里面的图标,用SHGetFileInfo()得到的哈
放在获取系统图标的前面