VC中怎样改变TAB背景色和背景图片

本文介绍了如何在VC中重载Tab控件类CBitmapTabCtrl,通过设置不同的背景图片和填充方式,实现Tab背景色和图片的自定义。通过SetBitmap函数,可以设置不同类型的背景显示效果,如平铺、拉伸和居中等。
摘要由CSDN通过智能技术生成

找了好久,最后用这种方法搞定的,也是别人的指点

重载Tab控件类,类声明和实现文件下面有:

#if !defined(AFX_BITMAPTABCTRL_H__7502D762_DAC6_4B57_B2B2_6563A23B9EAF__INCLUDED_)
#define AFX_BITMAPTABCTRL_H__7502D762_DAC6_4B57_B2B2_6563A23B9EAF__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// BitmapTabCtrl.h : header file
//
#include "resource.h"
/
// CBitmapTabCtrl window

class CBitmapTabCtrl : public CTabCtrl
{
// Construction
public:
CBitmapTabCtrl();

// Attributes
public:
enum {
BITMAP_NONE = 0,// do not show bitmap
BITMAP_TILE,// tile the bitmap to fill the dialog
BITMAP_STRETCH,// stretch the bitmap so it fits to the dialog
BITMAP_CENTER// center the bitmap inside the dialog
};

// Operations
public:

// Overrides
// ClassWizard generated virtual function overrides
//{ {AFX_VIRTUAL(CBitmapTabCtrl)
//}}AFX_VIRTUAL

// Implementation
public:
BOOL SetBitmap(UINT uResource, int nType);
VOID DrawItemEdge();
VOID DrawItemText();
virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
virtual ~CBitmapTabCtrl();

// Generated message map functions
protected:
intm_nType;// see enum above
CBitmapm_bmp;
//{ {AFX_MSG(CBitmapTabCtrl)
afx_msg void OnPaint();  
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
 //}}AFX_MSG

DECLARE_MESSAGE_MA

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值