关于使用CButtonST类设置对话框的背景
是这样的,写了一个小的MFC小程序(基于对话框的)。想要做按键及背景的美化。然后搜到了CButtonST这个类,也下载了这个类的Demo。按照这个demo写了个测试的对话...
是这样的,写了一个小的MFC小程序(基于对话框的)。想要做按键及背景的美化。
然后搜到了CButtonST这个类,也下载了这个类的Demo。
按照这个demo写了个测试的对话框程序。结果我自己写的对话框的背景没有进行显示。不知道是为什么?希望高手指点下
网上的Demo中的效果图和我的效果图:
我的OnInitDialog()函数如下:
BOOL CMyDlg::OnInitDialog()
{
CBkDialogST::OnInitDialog();
SetBitmap(IDB_SKY);
// m_button1.SetBitmaps(IDB_SKY, RGB(0, 255, 0), (int)BTNST_AUTO_DARKER);
// m_button1.DrawTransparent();
m_btnLogOff.SetIcon(IDI_BUTTERFLY, 48, 48);
m_btnLogOff.DrawTransparent();
// Workgroup button
m_btnWorkgroup.SetIcon(IDI_WORKGROUP);
m_btnWorkgroup.DrawTransparent();
// Toolbar buttons
m_btnOpen.SetIcon(IDI_OPEN, (int)BTNST_AUTO_DARKER);
m_btnOpen.SetTooltipText(_T("Open"));
m_btnOpen.DrawTransparent();
m_btnSearch.SetIcon(IDI_SEARCH1, (int)BTNST_AUTO_DARKER);
m_btnSearch.SetTooltipText(_T("Search"));
m_btnSearch.DrawTransparent();
m_btnExplorer.SetIcon(IDI_EXPLORER, (int)BTNST_AUTO_DARKER);
m_btnExplorer.SetTooltipText(_T("Internet explorer"));
m_btnExplorer.DrawTransparent();
m_btnHelp.SetIcon(IDI_HELP, (int)BTNST_AUTO_DARKER);
m_btnHelp.SetTooltipText(_T("Help"));
m_btnHelp.DrawTransparent();
m_btnAbout.SetIcon(IDI_ABOUT, (int)BTNST_AUTO_DARKER);
m_btnAbout.SetTooltipText(_T("About"));
m_btnAbout.DrawTransparent();
// Cannibal button
m_btnCannibal.SetBitmaps(IDB_CANNIBAL, RGB(0, 255, 0), (int)BTNST_AUTO_DARKER);
m_btnCannibal.DrawTransparent();
// Checkbox
m_chkCheckbox.SetIcon(IDI_LEDON, IDI_LEDOFF);
m_chkCheckbox.DrawTransparent();
return TRUE; // return TRUE unless you set the focus to a control
}
SetBitmap(IDB_SKY);这句话是这只子对话框背景的,上传的图片上第一个是我的,没有蓝色的背景,下面的有。。。 展开
然后搜到了CButtonST这个类,也下载了这个类的Demo。
按照这个demo写了个测试的对话框程序。结果我自己写的对话框的背景没有进行显示。不知道是为什么?希望高手指点下
网上的Demo中的效果图和我的效果图:
我的OnInitDialog()函数如下:
BOOL CMyDlg::OnInitDialog()
{
CBkDialogST::OnInitDialog();
SetBitmap(IDB_SKY);
// m_button1.SetBitmaps(IDB_SKY, RGB(0, 255, 0), (int)BTNST_AUTO_DARKER);
// m_button1.DrawTransparent();
m_btnLogOff.SetIcon(IDI_BUTTERFLY, 48, 48);
m_btnLogOff.DrawTransparent();
// Workgroup button
m_btnWorkgroup.SetIcon(IDI_WORKGROUP);
m_btnWorkgroup.DrawTransparent();
// Toolbar buttons
m_btnOpen.SetIcon(IDI_OPEN, (int)BTNST_AUTO_DARKER);
m_btnOpen.SetTooltipText(_T("Open"));
m_btnOpen.DrawTransparent();
m_btnSearch.SetIcon(IDI_SEARCH1, (int)BTNST_AUTO_DARKER);
m_btnSearch.SetTooltipText(_T("Search"));
m_btnSearch.DrawTransparent();
m_btnExplorer.SetIcon(IDI_EXPLORER, (int)BTNST_AUTO_DARKER);
m_btnExplorer.SetTooltipText(_T("Internet explorer"));
m_btnExplorer.DrawTransparent();
m_btnHelp.SetIcon(IDI_HELP, (int)BTNST_AUTO_DARKER);
m_btnHelp.SetTooltipText(_T("Help"));
m_btnHelp.DrawTransparent();
m_btnAbout.SetIcon(IDI_ABOUT, (int)BTNST_AUTO_DARKER);
m_btnAbout.SetTooltipText(_T("About"));
m_btnAbout.DrawTransparent();
// Cannibal button
m_btnCannibal.SetBitmaps(IDB_CANNIBAL, RGB(0, 255, 0), (int)BTNST_AUTO_DARKER);
m_btnCannibal.DrawTransparent();
// Checkbox
m_chkCheckbox.SetIcon(IDI_LEDON, IDI_LEDOFF);
m_chkCheckbox.DrawTransparent();
return TRUE; // return TRUE unless you set the focus to a control
}
SetBitmap(IDB_SKY);这句话是这只子对话框背景的,上传的图片上第一个是我的,没有蓝色的背景,下面的有。。。 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询