У меня есть представление, которое получено из CEditView. Он доступен только для чтения. Я хотел бы установить текст как своего рода регистрацию, но на экране ничего не отображается. Если я проведу temp
в отладчике после GetEditCtrl().GetWindowText(temp);
, я вижу, что текст действительно меняется внутри, но я ничего не вижу на экране.CEditView не отображается текст
// HistoryView.cpp : implementation file
//
#include "stdafx.h"
#include "HistoryView.h"
// CHistoryView
IMPLEMENT_DYNCREATE(CHistoryView, CEditView)
CHistoryView::CHistoryView()
{
}
CHistoryView::~CHistoryView()
{
}
BEGIN_MESSAGE_MAP(CHistoryView, CEditView)
END_MESSAGE_MAP()
// CHistoryView diagnostics
#ifdef _DEBUG
void CHistoryView::AssertValid() const
{
CEditView::AssertValid();
}
#ifndef _WIN32_WCE
void CHistoryView::Dump(CDumpContext& dc) const
{
CEditView::Dump(dc);
}
#endif
#endif //_DEBUG
// CHistoryView message handlers
void CHistoryView::OnInitialUpdate()
{
CEditView::OnInitialUpdate();
// TODO: Add your specialized code here and/or call the base class
GetEditCtrl().SetReadOnly(TRUE);
}
//!
/*!
*/
void CHistoryView::AddRow(CString message)
{
CString temp;
GetEditCtrl().GetWindowText(temp);
if(temp.IsEmpty())
{
GetEditCtrl().SetWindowText(message);
}
else
{
GetEditCtrl().SetWindowText(temp + "\r\n" + message);
}
GetEditCtrl().LineScroll(2, 0);
//GetEditCtrl().UpdateWindow(); // no effect
}
Спасибо за внимание. В то время как схожий код работал (ну, как и следовало ожидать, учитывая точку ChrisN) ранее, кажется, что я что-то переехал из VS2003-> VS2005. – Nick