MFC EDIT控件自动显示垂直滚动条

MFC 同时被 3 个专栏收录
28 篇文章 0 订阅
125 篇文章 0 订阅
100 篇文章 0 订阅

首先设置EDIT控件的属性,如下:

注意:Horizontal scroll 和 Auto HScroll 不要选择。

在OnInitDialog()函数中处理:

// 获取EDIT可以显示的行数 
TEXTMETRIC tm;
CRect rect;
GetDlgItem(IDC_EDIT_INFO)->GetClientRect(&rect);
CDC* pdc = GetDlgItem(IDC_EDIT_INFO)->GetDC();
::GetTextMetrics(pdc->m_hDC,&tm);
GetDlgItem(IDC_EDIT_INFO)->ReleaseDC(pdc);
m_nLineCount = rect.bottom/(tm.tmHeight-1.5);

在需要显示时:

        SetDlgItemText(IDC_EDIT_INFO,strStatus);
int nLine = ((CEdit*)GetDlgItem(IDC_EDIT_INFO))->GetLineCount();
if( nLine > m_nLineCount)
{
GetDlgItem(IDC_EDIT_INFO)->ShowScrollBar(SB_VERT, TRUE);
}
else
{
GetDlgItem(IDC_EDIT_INFO)->ShowScrollBar(SB_VERT, FALSE);
}



  • 0
    点赞
  • 0
    评论
  • 3
    收藏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值