请问:在SDK中怎样实现Windows桌面上那样的图标(如“我的电脑”)和文件夹图标?在线等待中...

OldStudent 2003-01-17 05:24:37
我想用SDK编写一个和Windows桌面一样的程序界面,但不知道象“我的电脑”“回收站”这样的桌面图标怎样实现???请教高手指点。。。多谢!
...全文
48 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
OldStudent 2003-01-20
  • 打赏
  • 举报
回复
我发现SDK例子中的语句 ListView_SetImageList()的运行结果也是 NULL,原因正在研究中。。。。请高人继续指点。。。
OldStudent 2003-01-20
  • 打赏
  • 举报
回复
我已基本实现了界面,但不知怎样修改ListView窗口的背景色,大家快帮帮我。。。
google_chu 2003-01-18
  • 打赏
  • 举报
回复
hehe
Firstbyte 2003-01-18
  • 打赏
  • 举报
回复

放寒假的时候
我告诉你答案吧
OldStudent 2003-01-18
  • 打赏
  • 举报
回复
为什么我用ListView时这个宏老是不成功
ListView_SetImageList()
前面的语句都运行成功,部分代码如下,请高手指点:
HWND hListViewWnd;
DWORD dwStyle = WS_VISIBLE|WS_CHILD|WS_BORDER|WS_EX_CLIENTEDGE|LVS_ICON|LVS_ALIGNLEFT;
int nWidth, nHeight;
RECT rect;
INITCOMMONCONTROLSEX init;

init.dwSize = sizeof(INITCOMMONCONTROLSEX);
init.dwICC = ICC_LISTVIEW_CLASSES;
InitCommonControlsEx(&init);

GetClientRect(hWndMain, &rect);
nWidth = rect.right - rect.left;
nHeight = rect.bottom - rect.top;
hListViewWnd = CreateWindowEx(0, WC_LISTVIEW, "", dwStyle, 0, 0, nWidth, nHeight,
hWndMain, (HMENU)1000, hInstance, NULL);
if (!hListViewWnd) MessageBox(NULL, "CreateWindowEx failed", NULL, MB_OK);

hImageList = ImageList_Create(32, 32, FALSE, 1, 0);
if (NULL == hImageList) MessageBox(NULL, "ImageList_Create failed", NULL, MB_OK);

hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON1));
if (NULL == hIcon) MessageBox(NULL, "LoadIcon failed", NULL, MB_OK);

if ((ImageList_AddIcon(hImageList, hIcon)) == -1)
MessageBox(NULL, "ImageList_AddIcon failed", NULL, MB_OK);

if ((ImageList_GetImageCount(hImageList)) < 1)
MessageBox(NULL, "ImageList_GetImageCount failed", NULL, MB_OK);

if ((ListView_SetImageList(hListViewWnd, hImageList, LVSIL_NORMAL)) == NULL)
MessageBox(NULL, "ListView_SetImageList failed", NULL, MB_OK);

OldStudent 2003-01-17
  • 打赏
  • 举报
回复
还有什么高人高见吗?继续啊!!!
ckacka 2003-01-17
  • 打赏
  • 举报
回复
在listview里面,每个图标可以设置一个"图片"
ckacka 2003-01-17
  • 打赏
  • 举报
回复
在一个listview控件里面就可以实现这样的功能,其实桌面就是一个特殊的窗体!
guyu_jj 2003-01-17
  • 打赏
  • 举报
回复
具体我忘了,对不起
guyu_jj 2003-01-17
  • 打赏
  • 举报
回复
你可以先下载一个抓图器
再system目录下有一个*.dll文件,里面有

69,336

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧