工控编程吧

标题: 上位机MFC如何获得文本的长度和高度 [打印本页]

作者: qq263946146    时间: 2019-7-31 09:59
标题: 上位机MFC如何获得文本的长度和高度
我们可以通过GetTextExtent获得指定文本的长度。例如:
CSize size = pDC->GetTextExtent(strText);
size变量我们就可以使用长,宽。
例如我们可以将一编辑框的文本长度设置为一按钮控件的窗口长度:

  1. void CGkbc8Dlg::OnButton1()
  2. {
  3.         CWnd* pEdit = GetDlgItem(IDC_EDIT1);
  4.         CWnd* pButton = GetDlgItem(IDC_BUTTON1);

  5.         CString strText = _T("");

  6.         //获得编辑框文本
  7.         pEdit->GetWindowText(strText);

  8.         //获得按钮DC
  9.         CDC* pDC = pButton->GetDC();

  10.         //获得文本大小
  11.         CSize size = pDC->GetTextExtent(strText);

  12.         //设置按钮文本
  13.         pButton->SetWindowText(strText);
  14.         //设置按钮大小
  15.         pButton->SetWindowPos(NULL, 0, 0, size.cx + 5, size.cy + 5, SWP_NOMOVE);
  16. }
复制代码


(, 下载次数: 0)