BCG属性表单风格修改与删除“上一步”“下一步”“帮助”“确定”四个按钮

来源:互联网 发布:java入门书籍 编辑:程序博客网 时间:2024/06/07 03:11

BCG属性表单风格修改与删除“上一步”“下一步”“帮助”“确定”四个按钮

我使用的VS为VS2008,不同版本设计有细小区别,大家注意

界面风格的修改

SJB_BCGAPP.cpp

CSJB_BCGAppApp::CSJB_BCGAppApp(){    // Enable Office 2010 look (Blue theme):    SetVisualTheme(BCGP_VISUAL_THEME_OFFICE_2010_BLUE);//修改界面风格    // TODO: add construction code here,    // Place all significant initialization in InitInstance}

这里写图片描述

我们右键转到定义选择BCGP_VISUAL_THEME_VS_2012_DARK

CSJB_BCGAppApp::CSJB_BCGAppApp(){    // Enable Office 2010 look (Blue theme):    SetVisualTheme(BCGP_VISUAL_THEME_VS_2012_DARK);//修改界面风格    // TODO: add construction code here,    // Place all significant initialization in InitInstance}

这里写图片描述

需要界面控件与非客户区也为所选风格,必须在属性表单中加入代码SJBMainSheet.cpp
EnableVisualManagerStyle(TRUE, TRUE);//设置控件与非客户区域为框架风格

CSJBMainSheet::CSJBMainSheet( CWnd* pParentWnd /*= NULL*/ )//构造函数:CBCGPPropertySheet (IDS_CAPTION, pParentWnd)//IDS_CAPTION为一组字符串,作为属性页名称{// IDS_CAPTION 是窗口标题,是预先添加的资源类型    //这是改变BCG的皮肤,两者必须要同时使用,而且需要预先添加资源图片,这里是IDB_ICONS32    SetLook (CBCGPPropertySheet::PropSheetLook_OutlookBar);//加一列图片    SetIconsList ( IDB_PNG1, 32);//加入PNG格式图片    AddPage(&m_Page1);//new Add    AddPage(&m_Page2);//new Add    EnableVisualManagerStyle(TRUE, TRUE);//设置控件与非客户区域为框架风格}

删除“上一步”“下一步”“帮助”“确定”四个按钮

这里写图片描述

1.点击CSJBMainSheet属性

这里写图片描述

选择OnInitDialg 添加重载函数OnInitDialg

在SJBMainSheet.cpp中会出现如下代码

BOOL CSJBMainSheet::OnInitDialog(){    BOOL bResult = CBCGPPropertySheet::OnInitDialog();    // TODO:  在此添加您的专用代码    return bResult;}

对上面代码进行修改

BOOL CSJBMainSheet::OnInitDialog(){    BOOL bResult = CBCGPPropertySheet::OnInitDialog();    // TODO:  在此添加您的专用代码    //禁用 4 Button    GetDlgItem(IDOK)->EnableWindow(FALSE);    GetDlgItem(IDCANCEL)->EnableWindow(FALSE);    GetDlgItem(ID_APPLY_NOW)->EnableWindow(FALSE);    GetDlgItem(IDHELP)->EnableWindow(FALSE);    //隐藏 4 Button    GetDlgItem(IDOK)->ShowWindow(SW_HIDE);    GetDlgItem(IDCANCEL)->ShowWindow(SW_HIDE);    GetDlgItem(ID_APPLY_NOW)->ShowWindow(SW_HIDE);    GetDlgItem(IDHELP)->ShowWindow(SW_HIDE);    //调整窗体大小    CRect btnRect;    CRect wdnRect;    GetDlgItem(IDCANCEL)->GetWindowRect(&btnRect);    GetWindowRect(&wdnRect);        ::SetWindowPos(this->m_hWnd, HWND_TOP, 0,0,wdnRect.Width(),wdnRect.Height() - btnRect.Height()-10, SWP_NOMOVE | SWP_NOZORDER);     return bResult;}

2.运行程序
这里写图片描述

1 0