void CNDlg::OnBnClickedok()
{
CString s;
CString h, m, c;
m_h.GetWindowText(h);
m_m.GetWindowText(m);
m_s.GetWindowText(c);
s = h + ":" + m + ":" + c;
MessageBox(s, L"設定成功", MB_OK);
}
void CNDlg::OnTimer(UINT_PTR nIDEvent)
{
CTime t = CTime::GetCurrentTime();
CString str;
str.Format(L"%02d:%02d:%02d", t.GetHour(), t.GetMinute(), t.GetSecond()); SetDlgItemText(IDC_curtime, str);
CDialogEx::OnTimer(nIDEvent);
if (s == str) { MessageBox(NULL,L"TIMEs UP!", MB_OK);
}
}
MFC數字時鐘 把當前時間字符串str 與響鈴時間字符串S定義為了全局變量(在頭文件中)然後再OnTimer函數裡比較兩者是否相同錯誤 1 error LNK2001: 無法解析的外部符號 "class ATL::CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT
s" (?s@@3V?$CStringT@_WV?$StrTraitMFC_DLL@_WV?$ChTraitsCRT@_W@ATL@@@@@ATL@@A) D:\多媒體\文檔\學科\C++\MFC\N\N\NDlg.obj N錯誤 2 error LNK1120: 1 個無法解析的外部命令 D:\多媒體\文檔\學科\C++\MFC\N\Debug\N.exe 1 1 N哪裡有問題..@_@求大神幫助
你既然使用了unicode字符串,那為什麼這一句的字符串不加上“L”呢?
改成:
s = h + L":" + m + L":" + c;
試試?