4796|6

72

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

WinCE6.0操作系统可以使用loadIcon函数么? [复制链接]

我使用loadicon加载图标不成功,返回0址,不知有没有什么好的方法可以在WinCE6.0下加载图标呀?
此帖出自WindowsCE论坛

最新回复

各处检查下来感觉都对呀,可就是显示不出icon 我用的CreateWindowEx         DWORD ex_style = dc->fullscreen ? WS_EX_TOPMOST : 0;         DWORD style    = dc->fullscreen                 ? /*WS_VISIBLE*/ WS_POPUP #if 1             : WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_SIZEBOX; #else             : WS_POPUP; #endif         RECT rect;         /*  Set rect to requested client rect  */     SetRect(&rect, dc->posx, dc->posy, dc->posx + dc->width, dc->posy + dc->height);         /*  Set rect to window rect  */     AdjustWindowRectEx(&rect, style, FALSE, ex_style);         rte->hwnd = CreateWindowEx(                 ex_style,                 TEXT("test"),                 TEXT("test"),                 style,                 rect.left,                 rect.top,                 rect.right  - rect.left,                 rect.bottom - rect.top,                 NULL,                 NULL,                 rte->hinstance,                 NULL         );  详情 回复 发表于 2010-3-30 14:49
点赞 关注
 

回复
举报

92

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
看来是可以用的,load成功了,但图标却还是显示不出来,使窗口左上角的小图标
此帖出自WindowsCE论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
操作系统不支持loadicon函数吧
此帖出自WindowsCE论坛
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

4
 
引用楼主 welonshen 的回复:
我使用loadicon加载图标不成功,返回0址,不知有没有什么好的方法可以在WinCE6.0下加载图标呀?
支持与否帮助文档讲的很清楚嘛,-_-…
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

5
 
ATOM my_register_class(HINSTANCE hinstance)
{
        WNDCLASS wc;
        HICON    icon = LoadIcon(hinstance, TEXT("Icon"));

    wc.style         = CS_HREDRAW | CS_VREDRAW;
    wc.lpfnWndProc   = (WNDPROC)wnd_proc;
    wc.cbClsExtra    = 0;
    wc.cbWndExtra    = 0;
    wc.hInstance     = hinstance;
    wc.hIcon         = icon;
    wc.hCursor       = LoadCursor(NULL, IDC_CROSS);
    wc.lpszMenuName  = 0;
    wc.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
    wc.lpszClassName = TEXT("Test");

    return RegisterClass(&wc);
}


这个类返回成功了,loadicon也有返回值,但就是没有图标,似乎WNDCLASS 不支持icon,有没有什么其他的办法加载icon?
此帖出自WindowsCE论坛
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(初级)

6
 
引用 4 楼 welonshen 的回复:
ATOM my_register_class(HINSTANCE hinstance)
{
WNDCLASS wc;
HICON icon = LoadIcon(hinstance, TEXT("Icon"));

wc.style = CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = (WNDPROC)wnd_proc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hinstance;
wc.hIcon = icon;
wc.hCursor = LoadCursor(NULL, IDC_CROSS);
wc.lpszMenuName = 0;
wc.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
wc.lpszClassName = TEXT("Test");

return RegisterClass(&wc);
}


这个类返回成功了,loadicon也有返回值,但就是没有图标,似乎WNDCLASS 不支持icon,有没有什么其他的办法加载icon?
可以确定,WNDCLASS类支持LoadIcon,详细内容可以参考下面代码:
  1. InitApp(HINSTANCE hInstance, int nCmdShow)
  2. {
  3.     HWND                        hWnd;
  4.     WNDCLASS                    wc;
  5.     // Set up and register window class
  6.     wc.style = CS_HREDRAW | CS_VREDRAW;
  7.     wc.lpfnWndProc = WindowProc;
  8.     wc.cbClsExtra = 0;
  9.     wc.cbWndExtra = 0;
  10.     wc.hInstance = hInstance;
  11.     wc.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MAIN_ICON));
  12.     wc.hCursor = LoadCursor(NULL, IDC_ARROW);
  13.     wc.hbrBackground = (HBRUSH )GetStockObject(BLACK_BRUSH);
  14.     wc.lpszMenuName = NULL;
  15.     wc.lpszClassName = APPNAME;
  16.     RegisterClass(&wc);

  17.     // Create a window
  18.     hWnd = CreateWindow(APPNAME,
  19.                         APPTITLE,
  20.                         WS_POPUP|WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_THICKFRAME,
  21.                         0,
  22.                         0,
  23.                         GetSystemMetrics(SM_CXSCREEN),
  24.                         GetSystemMetrics(SM_CYSCREEN),
  25.                         NULL,
  26.                         NULL,
  27.                         hInstance,
  28.                         NULL);
  29.     if (!hWnd)
  30.         return NULL;
  31.     ShowWindow(hWnd, nCmdShow);
  32.     UpdateWindow(hWnd);
  33.     SetFocus(hWnd);

  34.     return hWnd;
  35. }
复制代码
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

7
 
各处检查下来感觉都对呀,可就是显示不出icon

我用的CreateWindowEx

        DWORD ex_style = dc->fullscreen ? WS_EX_TOPMOST : 0;
        DWORD style    = dc->fullscreen
                ? /*WS_VISIBLE*/ WS_POPUP
#if 1
            : WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_SIZEBOX;
#else
            : WS_POPUP;
#endif

        RECT rect;

        /*  Set rect to requested client rect  */
    SetRect(&rect, dc->posx, dc->posy, dc->posx + dc->width, dc->posy + dc->height);

        /*  Set rect to window rect  */
    AdjustWindowRectEx(&rect, style, FALSE, ex_style);

        rte->hwnd = CreateWindowEx(
                ex_style,
                TEXT("test"),
                TEXT("test"),
                style,
                rect.left,
                rect.top,
                rect.right  - rect.left,
                rect.bottom - rect.top,
                NULL,
                NULL,
                rte->hinstance,
                NULL
        );
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表