0

Hai 在vc++6.0 MFC中,我连接了一个串口,同时在编辑框(IDC_EDIT1)中读取和显示数据(我想显示日期和时间),

我的问题是我在编辑框中使用了垂直滚动条。每当我显示新数据时,垂直滚动条就会向上移动;它必须向下(向下滚动),

写好的代码:

CString temp;
    static CString dat;
    static CString tim;

    if (dat != m_date || tim != m_time)
    {
        temp = "\r\n-------------------------------------------------------------------------------------------------\r\n\r\n";
        temp = temp + "Date: ";
        temp = temp + m_date;
        temp = temp + "\t\t\t";
        temp = temp + "Time: ";
        temp = temp + m_time;
        temp = temp + "\r\n-------------------------------------------------------------------------------------------------";
    }

    dat = m_date;
    tim = m_time;

    temp = temp + "\r\n\r\n";
    temp = temp + m_sensorname +"\t\t";
    temp = temp + m_value + "\t\t";
    temp = temp + m_units;

    if (m_datalog_id ==0x01)
        m_pdialog->m_editlog1= m_pdialog->m_editlog1 + temp;
    else if(m_datalog_id==0x02)
        m_pdialog->m_editlog2 = m_pdialog->m_editlog2 + temp;
    else
        return;

    m_pdialog->UpdateData(false);
4

1 回答 1

3

将文本写入编辑控件后,调用IDC_EDIT1.ScrollToCaret(). 这会将其向下滚动到新行所在的底部。

于 2008-12-17T05:56:00.983 回答