кнопка растрового изображения не отображается в 3D стиле - PullRequest
0 голосов
/ 09 июня 2010

Приведенный ниже код должен отображать кнопку растрового изображения в моем диалоговом окне.

CImage image;
hr = image.Load(_T("myimage.png")); // just change extension to load jpg
bitmap.Attach(image.Detach());
m_button.ModifyStyle(0,BS_BITMAP);
m_button.SetBitmap(bitmap);

Кнопка содержит изображение. Однако это только 2-D, а не желаемый 3-D стиль. Я установил для свойства draw владельца значение false, но это не изменило его поведение.

Кто-нибудь видит что-то не так с приведенным выше кодом?

Ответы [ 2 ]

1 голос
/ 17 марта 2012

У меня была такая же проблема. В предпросмотре дизайнера ресурсов он был отображен правильно. Но позже, во время выполнения, она была визуализирована как кнопка в классическом стиле, что означает не 3d, а 2d с кадрами.

Решение для этого было для меня. В моих диалогах OnInitDialog() метод я просто добавил следующую строку, и она работала как шарм:

CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerWindows));
0 голосов
/ 10 июня 2010
  • Какой тип кнопки m_button
  • Правильно ли вы инициализируете диспетчер визуальных стилей, если используете CMFCButton
  • Вы установили правильный стиль кнопки в редакторе ресурсов (3d)
  • Если вы создаете кнопку во время выполнения, опубликуйте вызов Create ()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...