MFC TabCtrl 控件修改标签尺寸

本文介绍了在MFC中如何调整TabControl控件的标签大小,提供了两种方法:一种是通过调用SetItemSize函数,另一种是使用TabCtrl_SetItemSize API。详细步骤包括设置固定宽度、调整子对话框的位置和尺寸,确保标签显示正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注意:无论那种方法,都要先设置Tab控件的Style属性为fixed width.

第一种方法

MFC,tabcontrol控件改变标签大小 - 优快云博客 

MFC,tabcontrol控件改变标签大小_帆帆郑的博客-优快云博客_mfc tabcontrol大小

CSize size, size1;
size.cx = 150;
size.cy = 40;
size1 = m_tab.SetItemSize(size);

第二种方法

MSDN:About Tab Controls (Windows) About Tab Controls - Win32 apps | Microsoft Docs

进入MSDN 关于Tab Control 的官方页面,找到我们需要的修改标签位置和尺寸。

通过SetItemSize函数可以精确的设置Tab标签的尺寸。

 点击进入这个函数的说明:

 

 这一页没有实质的内容,继续点击进入详情页,终于有了说明:

 于是在程序里这么写:

TabCtrl_SetItemSize(m_tab, 150, 40);

其中m_tab是控件关联的变量。

注意要设置Tab控件区域中子对话框rs.top的数值要与设置的Tab标签高度一致:

这里都设置为40,否则会出现留白或者标签的字被遮挡。

//获得IDC_TABTEST客户区大小  
CRect rs;
m_tab.GetClientRect(&rs);


//CWnd *pWnd = GetDlgItem(IDC_TAB_MAIN);
//pWnd->GetWindowRect(&rs);//获取控件的屏幕坐标
//cout << "Tab: " << rs.top << "," << rs.left << "," << rs.Width() << "," << rs.Height() << endl;
//调整子对话框在父窗口中的位置
rs.top += 40;
rs.bottom -= 1;
rs.left -= 1;
rs.right -= 1;
//Tab  
m_tab.InsertItem(0, _T("  通讯  \n"));
m_ControlDlg.Create(IDD_DIALOG_CONTROL, GetDlgItem(IDC_TAB_MAIN));
//设置子对话框尺寸并移动到指定位置
m_ControlDlg.MoveWindow(&rs);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值