我想向一个窗口的静态文本框中写入程序的计算结果,文本和数字很多,用 GetDlgItem(IDC_STATIC)->SetWindowTex不方便,又什么好方法吗??最好能进行一定的排版。谢谢!

解决方案 »

  1.   

    我想按一定的格式输出,实在不行就一行一行的输入,用文本框自动换行“m_String = m_String + sNewString + "\r\n" ”可以实现,但这样太麻烦了。你有什么推荐吗?谢谢
      

  2.   

    静态文本不会自动扩展大小, 如果你的东西太多,就输出不了了.
    还是使用编辑框吧, 设置成只读风格, 然后关联一个CEdit对象, 然后就可以方便的追加东西了.
      

  3.   

    为你的编辑框控件添加一个CString类型的变量上m_str,控件类别选择“value”(编译器可以帮助你自动添加),然后在响应函数中:
    void fun()
    {
    .....................................
            m_str = "你排好版的程序的计算结果";
    UpdateData(FALSE);
    }
      

  4.   

    或者:为你的编辑框控件添加一个CEit类型的变量上m_edit也行,控件类别选择“control”(编译器可以帮助你自动添加),然后在响应函数中:
    void fun()
    {
    .....................................
        m_edit.SetWindowText("你排好版的程序的计算结果");
      

  5.   


    变量使用 sprintf或者CString::Format都可以格式化进去, 然后再设置串就可以了.