Возвращение int_ptr из диалоговых окон - PullRequest
0 голосов
/ 13 января 2011

У диалогового окна есть тип возврата BOOL, но я пытаюсь сделать

case WM_CTLCOLORSTATIC:
        {
            HBRUSH g_hbrBackground = CreateSolidBrush(RGB(237, 209, 238));
            HDC hdcStatic = (HDC)wParam;
            SetBkMode(hdcStatic, TRANSPARENT);
            return (INT_PTR)g_hbrBackground;
        }

Выше (INT_PTR) происходит преобразование предупреждения производительности из int_ptr в bool, как это делается?

Ответы [ 3 ]

2 голосов
/ 13 января 2011

Вот объявление диалогового процесса:

INT_PTR CALLBACK DialogProc(
  __in  HWND hwndDlg,
  __in  UINT uMsg,
  __in  WPARAM wParam,
  __in  LPARAM lParam
);

Там нет BOOL.

Используйте правильные типы, и ваша проблема исчезнет.

Приветствия и hth.,

0 голосов
/ 13 января 2011

Введите ручку щетки в BOOL. Это ужасно, но так оно и есть.

0 голосов
/ 13 января 2011
return (BOOL)(g_hbrBackground != 0);

должно устранить предупреждение.

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