15,978
社区成员
发帖
与我相关
我的任务
分享
void CSPLToolView::OnBnClickedButton2()
{
this->Display(_T("TEST PASS"), 0);
this->Display(_T("TEST FAIL"), 1);
this->Display(_T("测试 PASS"), 0);
this->Display(_T("测试 FAIL"), 1);
}
LRESULT CSPLToolView::OnGetMessage(WPARAM wParam, LPARAM lParam)
{
int i;
CHARFORMAT cf;
i = (int)lParam;
wchar_t *lpsz = (wchar_t*)wParam;
memset(&cf, 0, sizeof(CHARFORMAT));
m_ctr_Trace.GetDefaultCharFormat(cf);
cf.dwEffects ^= CFE_AUTOCOLOR; // 为了让设置颜色有效
cf.yHeight = 15 * 15;//文字高度
// 新的颜色
if (i == 1)
{
cf.crTextColor = RGB(255, 0, 0);
}
else
{
cf.crTextColor = RGB(0, 0, 255);
}
m_ctr_Trace.SetWordCharFormat(cf); //为将要输入的内容设定字//csText
this->ShowInfo(lpsz);
return 0;
}
void CSPLToolView::ShowInfo(wchar_t *msg)
{
wchar_t szt[256];
wchar_t *lpsz = msg;
swprintf_s(szt, _T(">>>> %s\x0D\x0A"), lpsz);
//显示方法1
SETTEXTEX SetTxtEx = { 0, };
SetTxtEx.flags = ST_SELECTION;
SetTxtEx.codepage = 1200;
BOOL bRet = ::SendMessage(m_ctr_Trace.GetSafeHwnd(), EM_SETTEXTEX, (WPARAM)&SetTxtEx, (LPARAM)szt);
ASSERT(bRet);
//显示方法2
//m_ctr_Trace.ReplaceSel(szt); 用这种方式显示也一样
}
void CSPLToolView::Display(wchar_t *msg, int index)
{
SendMessage(WM_CAL_MSG, (WPARAM)msg, index);
}
void CSPLToolView::Display(CString sMsg, int index/*=3*/)
{
SendMessage(WM_CAL_MSG, (WPARAM)sMsg.GetBuffer(sMsg.GetLength()), index);
}
PARAFORMAT2 pf2;
memset(&pf2, 0, sizeof(PARAFORMAT2));
pf2.cbSize = sizeof(PARAFORMAT2);
pf2.dwMask = PFM_LINESPACING;
pf2.bLineSpacingRule = 2; //2倍行距,取值0-5,具体含义看帮助
::SendMessage(m_ctr_Trace.GetSafeHwnd(), EM_SETPARAFORMAT, 0, (LPARAM)&pf2);
void CSPLToolView::OnBnClickedButton2()
{
this->Display(_T("TEST PASS"), 0);
this->Display(_T("TEST FAIL"), 1);
this->Display(_T("测试 PASS"), 0);
this->Display(_T("测试 FAIL"), 1);
}
LRESULT CSPLToolView::OnGetMessage(WPARAM wParam, LPARAM lParam)
{
int i;
CHARFORMAT cf;
i = (int)lParam;
wchar_t *lpsz = (wchar_t*)wParam;
memset(&cf, 0, sizeof(CHARFORMAT));
m_ctr_Trace.GetDefaultCharFormat(cf);
cf.dwEffects ^= CFE_AUTOCOLOR; // 为了让设置颜色有效
cf.yHeight = 15 * 15;//文字高度
// 新的颜色
if (i == 1)
{
cf.crTextColor = RGB(255, 0, 0);
}
else
{
cf.crTextColor = RGB(0, 0, 255);
}
m_ctr_Trace.SetWordCharFormat(cf); //为将要输入的内容设定字//csText
this->ShowInfo(lpsz);
return 0;
}
void CSPLToolView::ShowInfo(wchar_t *msg)
{
wchar_t szt[256];
wchar_t *lpsz = msg;
swprintf_s(szt, _T(">>>> %s\x0D\x0A"), lpsz);
//显示方法1
SETTEXTEX SetTxtEx = { 0, };
SetTxtEx.flags = ST_SELECTION;
SetTxtEx.codepage = 1200;
BOOL bRet = ::SendMessage(m_ctr_Trace.GetSafeHwnd(), EM_SETTEXTEX, (WPARAM)&SetTxtEx, (LPARAM)szt);
ASSERT(bRet);
//显示方法2
//m_ctr_Trace.ReplaceSel(szt); 用这种方式显示也一样
}
void CSPLToolView::Display(wchar_t *msg, int index)
{
SendMessage(WM_CAL_MSG, (WPARAM)msg, index);
}
void CSPLToolView::Display(CString sMsg, int index/*=3*/)
{
SendMessage(WM_CAL_MSG, (WPARAM)sMsg.GetBuffer(sMsg.GetLength()), index);
}