下面的代码应该在我的对话框中显示一个位图按钮。
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风格。我已将所有者绘制的属性设置为false,但这并未改变行为。
有人看到上述代码有什么问题吗?
答案 0 :(得分:1)
我遇到了同样的问题。在资源设计器预览中,它已正确呈现。但是在运行之后,它被渲染为一个带有古典风格的按钮,这意味着不是3d,而是带有框架的2d。
解决这个问题对我来说。在我的对话框OnInitDialog()
方法中,我刚刚添加了以下一行,它就像一个魅力:
CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerWindows));
答案 1 :(得分:0)