Проблема с отображением значка в кнопке в Windows XP (SP2) (MFC)! - PullRequest
0 голосов
/ 03 февраля 2010

У меня была проблема с отображением значка в кнопке вместе с приложением «Текст в MFC». После прочтения большого количества arctilces я получил решение для этого, и оно отлично работало. Но когда я тестировал свое приложение в Win XP (SP2). Это удивило меня тем, что не показывал значок. Проверьте приведенный ниже код, который я использовал для отображения значка вместе с тестом в кнопке. Пожалуйста, дайте мне знать, если есть какие-либо исправления для этой проблемы. В ожидании ваших ответов

HICON addIcon = (HICON)LoadImage(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON4),
      IMAGE_ICON,0,0,LR_DEFAULTCOLOR);    

 SendMessageA(::GetDlgItem(m_hWnd,IDC_ADD),BM_SETIMAGE,IMAGE_ICON,(LPARAM)(DWORD)addIcon);

Ответы [ 2 ]

1 голос
/ 05 февраля 2010

Если вы используете VS2008 (вам следует), используйте CMFCButton из Feature Pack.У него гораздо лучшая поддержка растровых кнопок.

0 голосов
/ 03 февраля 2010

Я могу подтвердить, что я не могу заставить его работать (на Win2003, моей основной машине для разработки), и краткий поиск в Интернете нашел много жалоб, но никаких жизнеспособных ответов.

Мое единственное предложение - сделать кнопку владельца. Обработка сообщения WM_DRAWITEM не представляет трудностей и может решить эту проблему для вас по всем направлениям.

см. " Родная Win32-тема с поддержкой управления на основе владельца без MFC "

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...