VC之CButton添加背景图片的方法

方法1. 使用CBitmap

CBitmap   m_bitmap;
m_bitmap.LoadBitmap(IDB_BITMAP1);
HBITMAP hBitmap = (HBITMAP)m_bitmap.GetSafeHandle();
((CButton *)GetDlgItem(IDC_BUTTON1))->SetBitmap(hBitmap);

方法2. 使用CBitmapButton

(1) 在对话框类里定义成员变量:CBitmapButton m_btn
方法: 先添加按钮的CButton变量,再手动改为CBitmapButton类
(2) 在初始化里添加:
m_btn.LoadBitmaps(IDB_B1,IDB_B2,IDB_B3,IDB_B4);
m_btn.SubclassDlgItem(IDC_BUTTON1,this);
m_btn.SizeToContent(); 

其中IDB_B1等都是你加进来的按钮位图,代表了平时、按下、弹开、获取焦点时(顺序可能不对)的位图

方法3.

(1) 在对话框类里定义成员变量

CButton m_BitmapButton;

(2) 在初始化里添加:

BOOL CE0406Dlg::OnInitDialog()
{
	CDialog::OnInitDialog();
	HBITMAP hBitmap = ::LoadBitmap(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP1));   //IDB_BITMAP1 为BITMAP资源
	m_BitmapButton.SetBitmap(hBitmap);

	return TRUE;  // return TRUE  unless you set the focus to a control
} 

(3) 添加映射

void CE0406Dlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CE0406Dlg)
	DDX_Control(pDX, IDC_BUTTON1, m_BitmapButton);  // 关联上
	//}}AFX_DATA_MAP
} 
时间: 2024-08-15 18:50:42

VC之CButton添加背景图片的方法的相关文章

Qt中添加背景图片的方法

Qt中添加背景图片的方法 1. QPalette的方法 #include <QApplication>#include <QtGui> int main(int argc, char *argv[]){    QApplication app(argc,argv);        QFrame *frame = new QFrame;    frame->resize(400,700);    QPixmap pixmap("images/frame.png&quo

Qt添加背景图片的方法

转至http://www.cppblog.com/qianqian/archive/2010/07/25/121238.html 1. QPalette的方法 #include <QApplication>#include <QtGui> int main(int argc, char *argv[]){    QApplication app(argc,argv);        QFrame *frame = new QFrame;    frame->resize(40

VC++MFC对话框程序中给对话添加背景图片

VC对话框怎么显示背景图片呢.在MFC中实现背景图片,不像C#应用程序那么简单.今天就和朋友们说说如何在VC界面中设置背景图片 ^_^ 工具/原料 Visual C++ 2010 方法一:用Picture控件 1 新建MFC应用程序 2 在应用程序中,选择基于对话框,其他保持默认即可 3 右击项目,选择添加-资源 4 在添加资源对话框中,点击导入,选择要作为背景的图片 jpg格式的图片可以用画图打开另存为bmp格式 (网上说可以直接jpg格式,自行实验未成功) 下方对话框中资源类型选为bitma

swing-窗体添加背景图片的2种方法

在美化程序时,常常需要在窗体上添加背景图片.通过搜索和测试,发现了2种有效方式.下面分别介绍.1.利用JLabel加载图片利用JLabel自带的setIcon(Icon icon)加载icon,并设置JLabel对象的位置和大小使其完全覆盖窗体.这是一个很取巧的办法,代码非常简单,如下所示. JLabel lbBg = new JLabel(imageIcon); lbBg.setBounds(0, 0, frameSize.width, frameSize.height); this.getC

VC++对话框(CDialog)添加背景图片

在对话框(CDialog)程序中,为了让程序看上去漂亮一些,我们可以为对话框添加一个好看的背景图片,要想完成这个目标,可以利用afx_msg BOOLOnEraseBkgnd (CDC* pDC) 这个函数. 下面结合实例说明(实例可在我的CSDN资源中下载:http://download.csdn.net/detail/margin1988/8337225): (1)找来一张合适的BMP格式的背景图片,将其放在工程的res目录下,然后在程序的资源视图中,将这张图片导入进来(假设导入后其ID为:

C#(winform)为button添加背景图片

1.既然是添加背景图片 所以这里应该使用 Button.BackgroudImage = "" ;来设置图片 而不应该使用  Button.Image = ""; 因为使用BackgroudImage来设置背景图片,我们还可以使用 BackgroundImageLayout来调节图片,让图片更好的显示在button上 通常使用: 1 this.btnReset.BackgroundImage = global::Test.Properties.Resources.b

MFC添加背景图片

1.在资源里导入一个bmp图片假设名称为IDB_BITMAP1 实现OnPaint方法 CPaintDC dc(this); CRect rect; GetClientRect(&rect); CDC dcMem; dcMem.CreateCompatibleDC(&dc); CBitmap bmpBackground; bmpBackground.LoadBitmap(IDB_BITMAP1); //IDB_BITMAP是你自己的图对应的ID BITMAP bitmap; bmpBack

ios:设置视图背景图片的方法

1. 使用一个UIImageView实例做子视图,并且放最后面UIImageView *customBackgournd = [UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.jpg"]];self.background = customBackground;[customBackground release]; [self addSubview:background];[self sendSubVie

netbeans中给jpanl添加背景图片制定代码的理解——匿名内部类继承父类

此测试是为了仿照在netbeans中给jpanl添加背景图片的制定代码的执行过程 在JpDemo中定义了个Car类的数据类型,但在给其赋值对象时使用了匿名内部类,继承了Car类,是其子类,并重写了父类的run方法,由于父类的构造函数,会自动执行run方法,就输出了sun run,证明重写成功,然后又再执行super.run 又一次调用父类未重写的run方法,因此输出fater run. 与此相似给jpanl添加背景图的代码为: jPanel1 = new javax.swing.JPanel()