属性表标签上的位图在MFC,CB下的实现

2008-02-23 05:35:36来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

属性表标签(tab control)支持在每一个item上放Image 图片。在mfc下实现相当简单,可分为以下几步:

step1: create a bitmap resource with the images

you can also use icons or even create the images at run time.
the size of the images should be in proportion to the height
of the label.
step2: add member variable of type Cimagelist

protected:
CImagelist m_imagetab;

step3: Override OnInitDialog() and add code to it

bool CmyPropSheet::OnInitDialog()
{
bool bresult=CProperttySheet::OnInitDialog();
m_imagetab.create(IDB_TABIMAGES,13,1,RGB(255,255,255));
CTabCtrl *pTab=GetTabControl();
pTab->SetImageList(&m_imagetab);

tc_item tcitem;
tcitem.mask=tcif_image;

for(int i=0;i<3;i )
{
tcitem.iimage=i;

pTab->SetItem(i,&tcitem);
}
return bresult;
}

C Builder 没有提供 SetImageList,SetItem这样的函数,但我们能够直接处理WINDOWS API 消息:TCM_SETIMAGELIST,TCM_SETITEM. 看下面的代码能够体会不同的编程风格。

void __fastcall TForm1::FormPaint(TObject *Sender)
{


TabControl1->Perform ( TCM_SETIMAGELIST, 0, ImageList1->Handle );
TCITEM tcitem;
tcitem.mask=TCIF_IMAGE ;
for(int i=0;i<3;i )
{
tcitem.iImage=i;
TabControl1->Perform ( TCM_SETITEM, i,(LPARAM) (LPTCITEM) &tcitem );

}

}




标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: C 程式设计从零开始之语句(2)

下一篇: 从TColor对象中解析出红,绿,蓝的亮度

热门词条
热门标签