QQ登录

只需一步,快速开始

上位机MFC如何在长文本末端显示省略号

[ 复制链接 ]
在窗口界面上直接输出文本可以使用函数DrawText。例如在对话框程序的函数OnPaint中添加如下代码。

  1. CPaintDC dc(this);
  2.         CString strText = _T("This a long string");
  3.         CRect rect(10, 10, 100, 30);

  4.         //输出文本,在长文本末端显示省略号
  5.         dc.DrawText(strText, rect, DT_LEFT | DT_END_ELLIPSIS);
  6.                 CDialog::OnPaint();
复制代码
变成:

  1. void CGkbc8Dlg::OnPaint()
  2. {
  3.         if (IsIconic())
  4.         {
  5.                 CPaintDC dc(this); // device context for painting

  6.                 SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

  7.                 // Center icon in client rectangle
  8.                 int cxIcon = GetSystemMetrics(SM_CXICON);
  9.                 int cyIcon = GetSystemMetrics(SM_CYICON);
  10.                 CRect rect;
  11.                 GetClientRect(&rect);
  12.                 int x = (rect.Width() - cxIcon + 1) / 2;
  13.                 int y = (rect.Height() - cyIcon + 1) / 2;

  14.                 // Draw the icon
  15.                 dc.DrawIcon(x, y, m_hIcon);
  16.         }
  17.         else
  18.         {CPaintDC dc(this);
  19.         CString strText = _T("This a long string");
  20.         CRect rect(10, 10, 100, 30);

  21.         //输出文本,在长文本末端显示省略号
  22.         dc.DrawText(strText, rect, DT_LEFT | DT_END_ELLIPSIS);
  23.                 CDialog::OnPaint();
  24.         }
  25. }
复制代码
我们可以看到dc.DrawText(strText, rect, DT_LEFT | DT_END_ELLIPSIS);
其中DT_END_ELLIPSIS就 是实现这一功能的关键代码。
  

上位机VC MFC程序开发精典实例大全源码与视频讲解配套下载408例

  

经历1年的编程与录制点击进入查看


  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索