知道 MFC 已經是很久很久的事情了,每次到書店也總是留意他的存在,可是自己卻遲遲沒有動手去買一本真正的書,拿在手中 慢慢的 K ,也許是自知道自己的 C/C++ 功力不到家,再說就是我從來就沒真正去接觸這門藝術學問,太高深了吧..
好啦,回正題,由於是入門,所以只寫了簡單的東西,如果是高手請多多指教..
(主要是重要部份代碼節錄)
(還有就是 string to double, double to string , 用的是 CString)
第一種取值和賦值方法 (直接利用函數?)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| void CTestMFCDlg::OnBnClickedOk() {
CString str1, str2, totalStr;
GetDlgItemText(IDC_EDIT1, str1); GetDlgItemText(IDC_EDIT2, str2);
double num1 = _wtof(str1); double num2 = _wtof(str2); double total= num1 + num2;
totalStr.Format(_T("%.2f"), total); SetDlgItemText(IDC_EDIT3, totalStr); }
|
第二種取值和賦值方法 (利用控件 ID)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| void CTestMFCDlg::OnBnClickedOk() { CString str1, str2, totalStr;
CEdit * pEdit1 = (CEdit*)GetDlgItem(IDC_EDIT1); CEdit * pEdit2 = (CEdit*)GetDlgItem(IDC_EDIT2); CEdit * pEdit3 = (CEdit*)GetDlgItem(IDC_EDIT3); pEdit1->GetWindowTextW(str1); pEdit2->GetWindowTextW(str2);
double num1 = _wtof(str1); double num2 = _wtof(str2); double total= num1 + num2;
totalStr.Format(_T("%.2f"), total); pEdit3->SetWindowTextW(totalStr); }
|
第三種取值和賦值方法 (利用控件的變量和類型)
1 2 3 4 5 6 7 8 9
|
public: afx_msg void OnBnClickedOk(); CEdit m_edit1; CEdit m_edit2; CEdit m_edit3;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
void CTestMFCDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_EDIT1, m_edit1); DDX_Control(pDX, IDC_EDIT2, m_edit2); DDX_Control(pDX, IDC_EDIT3, m_edit3); }
void CTestMFCDlg::OnBnClickedOk() { CString str1, str2, totalStr;
m_edit1.GetWindowTextW(str1); m_edit2.GetWindowTextW(str2);
double num1 = _wtof(str1); double num2 = _wtof(str2); double total= num1 + num2;
totalStr.Format(_T("%.2f"), total);
m_edit3.SetWindowTextW(totalStr); }
|