在一个基于对话框的程序中,怎样在一个子对话框(不是主对话框)的标题栏上显示一个图标?

解决方案 »

  1.   

    先读一个ICON进来,用
    HICON hIcon = LoadIcon( NULL, IDI_APPLICATION );
    获得子窗口的句柄,然后SetClassLongPtr( hWnd, GCLP_HICON, hIcon );
    SetClassLongPtr( hWnd, GCLP_HICONSM, hIcon );
    就行了
      

  2.   

    要保证以下几点:
    1. 子对话框已经显示出来
    2. 该子对话框的句柄是可用的
    3. 子对话框没有WS_EX_TOOLWINDOW属性
    4. 这面的代码应该在OnInitDialog的函数中调用。
    5. 确保读入的图标句柄是可用的。
      

  3.   

    在子对话框的OnInitDialog中写下面的代码 HICON hIcon = LoadIcon( NULL, IDI_APPLICATION );
    SendMessage( WM_SETICON, TRUE, (LPARAM)hIcon );
    SendMessage( WM_SETICON, FALSE, (LPARAM)hIcon );