欢迎来到天天文库
浏览记录
ID:9081656
大小:55.50 KB
页数:8页
时间:2018-04-16
《深入浅出cpropertysheet》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、深入浅出CPropertySheet为了最大限度的发挥属性页的效用,首先让我们先从CPropertySheet继承一个新类,取名为CMyPropSheet.接着便可以进行下面的各种操作:一、隐藏属性页默认按钮隐藏掉Apply应用按钮:propsheet.m_psh.dwFlags
2、=PSH_NOAPPLYNOW;或隐藏掉Cancel取消按钮:CWnd*pWnd=GetDlgItem(IDCANCEL);pWnd->ShowWindow(FALSE);二、移动属性页按钮首先,要获取按钮的句柄,然后就可以象对待窗体
3、一样处理它们了.下面代码先隐藏掉Apply和Help铵钮,再把OK和Cancel按移动到右侧。BOOLCMyPropSheet::OnInitDialog(){BOOLbResult=CPropertySheet::OnInitDialog();intids[]={IDOK,IDCANCEL};//,ID_APPLY_NOW,IDHELP};//HideApplyandHelpbuttonsCWnd*pWnd=GetDlgItem(ID_APPLY_NOW);pWnd->ShowWindow(FALSE);pW
4、nd=GetDlgItem(IDHELP);pWnd->ShowWindow(FALSE);CRectrectBtn;intnSpacing=6;//spacebetweentwobuttons...for(inti=0;iGetWindowRect(rectBtn);ScreenToClient(&rectBtn);intbtnWidth=rectBtn.Width();rectBtn.left=rectBtn
5、.left+(btnWidth+nSpacing)*2;rectBtn.right=rectBtn.right+(btnWidth+nSpacing)*2;GetDlgItem(ids[i])->MoveWindow(rectBtn);}returnbResult;}下面代码移动所有按钮到右侧,并且重新置属性页为合适的大小.BOOLCMyPropSheet::OnInitDialog(){BOOLbResult=CPropertySheet::OnInitDialog();intids[]={IDOK,IDCA
6、NCEL,ID_APPLY_NOW};CRectrectWnd;CRectrectBtn;GetWindowRect(rectWnd);GetDlgItem(IDOK)->GetWindowRect(rectBtn);intbtnWidth=rectBtn.Width();intbtnHeight=rectBtn.Height();intbtnOffset=rectWnd.bottom-rectBtn.bottom;intbtnLeft=rectWnd.right-rectWnd.left;rectWnd.bo
7、ttom=rectBtn.top;rectWnd.right=rectWnd.right+btnWidth+btnOffset;MoveWindow(rectWnd);rectBtn.left=btnLeft;rectBtn.right=btnLeft+btnWidth;for(inti=0;i8、DlgItem(ids[i])->MoveWindow(rectBtn);}returnbResult;}三、改变属性页上的标签文字首先修改TC_ITEM结构,然后用SetItem来修改标签文字,如下代码:TC_ITEMitem;item.mask=TCIF_TEXT;item.pszText="NewLabel";//Changethelabelofthefirsttab(0istheindexofthefirsttab)...GetTabControl()->SetItem(0,&item);四、改变属性页9、标签文字的字体属性代码如下m_NewFont.CreateFont(14,0,0,0,800,TRUE,0,0,1,0,0,0,0,_T("Arial"));GetTabControl()->SetFont(&m_NewFont);五、在属性页标签上显示位图可以用CImageList建立图像.用SetItem来设置,如下代码所示:BOOLCMyPropSheet::OnInitDial
8、DlgItem(ids[i])->MoveWindow(rectBtn);}returnbResult;}三、改变属性页上的标签文字首先修改TC_ITEM结构,然后用SetItem来修改标签文字,如下代码:TC_ITEMitem;item.mask=TCIF_TEXT;item.pszText="NewLabel";//Changethelabelofthefirsttab(0istheindexofthefirsttab)...GetTabControl()->SetItem(0,&item);四、改变属性页
9、标签文字的字体属性代码如下m_NewFont.CreateFont(14,0,0,0,800,TRUE,0,0,1,0,0,0,0,_T("Arial"));GetTabControl()->SetFont(&m_NewFont);五、在属性页标签上显示位图可以用CImageList建立图像.用SetItem来设置,如下代码所示:BOOLCMyPropSheet::OnInitDial
此文档下载收益归作者所有