日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MFC对话框控件访问的七种方式

發(fā)布時間:2025/3/21 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MFC对话框控件访问的七种方式 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

void CTestDlg::OnButtonAdd() {// TODO: Add your control notification handler code here//動態(tài)創(chuàng)建按鈕 /* if ( FALSE == m_bIsCreate ) // 亦可以通過靜態(tài)變量 static BOOL bIsCreate = FALSE;{m_btn.Create("Lee", BS_DEFPUSHBUTTON | WS_VISIBLE | WS_CHILD, CRect(0,0,100,65), this, 111);// m_btn.ShowWindow(SW_NORMAL);//若上句沒有WS_VISIBLE,就加上showWindowm_bIsCreate = TRUE;}else{m_btn.DestroyWindow();m_bIsCreate = FALSE;} */ /* //最簡單的動態(tài)創(chuàng)建按鈕if (!m_btn.m_hWnd) //窗口句柄不為空{(diào)m_btn.Create("Lee", BS_DEFPUSHBUTTON | WS_VISIBLE | WS_CHILD, CRect(0,0,100,65), this, 111);}else{m_btn.DestroyWindow(); // 會自動將 m_hWnd = NULL} *///實現(xiàn) 點擊Add按鈕,將 編輯框1的數(shù) + 編輯框2 的數(shù) 放到編輯框3中 /* int num1, num2, num3;char ch1[10], ch2[10], ch3[10];GetDlgItem(IDC_EDIT1)->GetWindowText(ch1,10); //將編輯框的文本存到ch1中,最大10個字符GetDlgItem(IDC_EDIT2)->GetWindowText(ch2,10);num1 = atoi(ch1); // 將字符串轉(zhuǎn)換為整型num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10); // 將整數(shù)num3 轉(zhuǎn)換到ch3中,以十進制的方式GetDlgItem(IDC_EDIT3)->SetWindowText(ch3); // 將ch3字符數(shù)值,存到編輯框3中 */ /* //也可以int num1, num2, num3;char ch1[10], ch2[10], ch3[10];GetDlgItemText(IDC_EDIT1, ch1, 10);GetDlgItemText(IDC_EDIT2, ch2, 10);num1 = atoi(ch1); // 將字符串轉(zhuǎn)換為整型num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);SetDlgItemText(IDC_EDIT3, ch3); */ /* //還可以int num1, num2, num3;num1 = GetDlgItemInt(IDC_EDIT1); // 直接獲得編輯框中的數(shù)值num2 = GetDlgItemInt(IDC_EDIT2);num3 = num1 + num2;SetDlgItemInt(IDC_EDIT3, num3); */ /* //最簡單的一種,用classwizard 關(guān)聯(lián) 控件與成員變量(以值)UpdateData();m_num3 = m_num2 + m_num1;UpdateData(FALSE); */ /* //第五種方式 用classwizard 關(guān)聯(lián) 控件與成員變量(以控件)。與第一種相似int num1, num2, num3;char ch1[10], ch2[10], ch3[10];m_edit1.GetWindowText(ch1, 10);m_edit2.GetWindowText(ch2, 10);num1 = atoi(ch1); // 將字符串轉(zhuǎn)換為整型num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);m_edit3.SetWindowText(ch3); */ /* //第六種方式,發(fā)送消息int num1, num2, num3;char ch1[10], ch2[10], ch3[10];//::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd, WM_GETTEXT, 10, (LPARAM)ch1);//::SendMessage(m_edit1.m_hWnd, WM_GETTEXT, 10, (LPARAM)ch1);//GetDlgItem(IDC_EDIT1)->SendMessage(WM_GETTEXT, 10, (LPARAM)ch1);m_edit1.SendMessage(WM_GETTEXT, 10, (LPARAM)ch1); //以上四句等價m_edit2.SendMessage(WM_GETTEXT, 10, (LPARAM)ch2);num1 = atoi(ch1); // 將字符串轉(zhuǎn)換為整型num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);m_edit3.SendMessage(WM_SETTEXT, 10, (LPARAM)ch3); *///第七種方式int num1, num2, num3;char ch1[10], ch2[10], ch3[10];SendDlgItemMessage(IDC_EDIT1, WM_GETTEXT, 10, (LPARAM)ch1);//直接給子控件發(fā)消息SendDlgItemMessage(IDC_EDIT2, WM_GETTEXT, 10, (LPARAM)ch2);num1 = atoi(ch1); // 將字符串轉(zhuǎn)換為整型num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);SendDlgItemMessage(IDC_EDIT3, WM_SETTEXT, 10, (LPARAM)ch3);SendDlgItemMessage(IDC_EDIT3, EM_SETSEL, 0, -1); //復(fù)選所有的文本//GetDlgItem(IDC_EDIT3)->SetFocus(); //將焦點聚到edit3. 或者 m_edit3.SetFocus(); }

  

轉(zhuǎn)載于:https://www.cnblogs.com/htj10/p/9346411.html

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的MFC对话框控件访问的七种方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。