Элемент управления OwnerDrawn в MFC - PullRequest
1 голос
/ 23 декабря 2008

Я создаю приложение MFC, в котором есть библиотека тем оформления, которая обрабатывает эффект пользовательского интерфейса при визуализации элементов управления (вызывается в oninitdialog). Но, между тем, у меня также есть требование отображать значок на кнопках. Для этого я помечаю кнопки как ownerdrawn = true и могу отображать значок, но в этом случае эффект скина не выполняется на тех кнопках, для которых снятие владельца выполняется мной. Итак, мой вопрос: как я могу гарантировать, что управление будет принадлежать мне, а также любой другой библиотеке.

Ответы [ 2 ]

1 голос
/ 31 декабря 2008

Вам не нужно рисовать владельца, чтобы отображать значки в кнопках!

1 голос
/ 23 декабря 2008

Вызовите обработчик по умолчанию для OnPaint, чтобы убедиться, что у библиотеки скинов есть возможность нарисовать кнопку, а затем нарисовать свой собственный контент поверх.

void OnPaint()
{
    Default();
    CClientDC dc(this);
    // your painting code goes here
}
...