MFC基本控件使用——静态文本框(Static)

本文介绍了如何在MFC中解决静态文本框的背景透明、文字样式修改及添加事件响应等问题。通过重载OnCtlColor()函数实现背景透明,创建CFont成员变量并设置字体,以及自定义CStaticEx类以支持更多定制功能,如文字颜色、大小、字体调整,以及链接、手型、闪烁等效果。
摘要由CSDN通过智能技术生成

众所周知,在MFC应用程序中,静态文本框的使用可以说是必不可少。但是呢,就MFC提供的Static直接使用起来还是有一些小问题的。比如说:

(1)当对话框有背景图片或其他颜色的时候,静态文本框会有很难看的灰色的背景颜色,所以这里存在一个透明的问题;

(2)如何怎么修改静态文本框中文字的颜色、大小、字体等等;

(3)其实静态文本框也可以像按钮一样,Click、MoveOn等等事件可以触发。

下面就一一讲述下怎么实现的。

第一个问题:对静态文本框的背景实现透明处理:

首先,重载对话框的OnCtlColor()函数,也就是负责控件的颜色绘制

然后,如下所示,指定ID相对应的控件的背景模式为透明

HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
	HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);

	// TODO:  在此更改 DC 的任何特性
	int n = pWnd->GetDlgCtrlID();
	if (n == IDC_STATIC_XXX)		//这里的ID就是你自己要设置透明的静态文本框ID
	{
		 pDC-&g
  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值