ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2026/5/19 3:19:57ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£
VC2012ÏÂMFC³ÌÐò¸÷¿Ø¼þµÄ³£Ó÷½·¨
·ÖÀࣺvc¿Ø¼þ 2013-02-16 16:32 94ÈËÔĶÁÆÀÂÛ(0) Êղؾٱ¨
һϿؼþµÄÓ÷¨È«²¿ÔÚVC2012ϵ÷ÊÔͨ¹ý£¬ÌØ·¢ÎÄÊղأ¨²¿·ÖÄÚÈÝÀ´×Ô»ò²Î¿¼×ÔÍøÂ磩£º Static Text:
½«IDºÅ¸Ä³ÉΨһµÄÒ»¸ö£¬È磺IDC_XX£¬È»ºó½øÒ»´ÎÀàÏòµ¼µãÈ·¶¨²úÉúÕâ¸öID£¬Ö®ºó¸ü¸ÄCaptionÊôÐÔ£º
GetDlgItem(IDC_XX)->SetWindowText(L\); ÉèÖÃ×ÖÌ壺
CFont *pFont= newCFont;
pFont->CreatePointFont(120,_T(\»ªÎÄÐп¬\)); GetDlgItem(IDC_XX)->SetFont(pFont); Edit Control: ÉèÖÃÎı¾£º
SetDlgItemText(IDC_XX,L\); »ñÈ¡ËùÓÐÊäÈ룺
½¨Á¢ÀàÏòµ¼´´½¨Ò»¸ö³ÉÔ±±äÁ¿£¨¼ÙÉèÊÇshuru1£¬shuru2¡¡£©ÀàÐÍÑ¡value£¬±äÁ¿ÀàÐÍÈÎÑ¡¡£ UpdateData(true);
GetDlgItem(IDC_XX)->SetWindowText(shuru1);
µÚÒ»¾ä¸üÐÂËùÓн¨Á¢Á˱äÁ¿µÄ¶Ô»°¿ò×é¼þ£¬»ñÈ¡ÊäÈëµÄÖµ¡£µÚ¶þ¾ä½«Ç°ÃæµÄIDC_XXµÄ¾²Ì¬Îı¾ÄÚÈݸÄΪshuru1ÊäÈëµÄÄÚÈÝ¡£ ÈôÀàÐÍÑ¡ÓÃcontrol: 1.ÉèÖÃÖ»¶ÁÊôÐÔ£º
shuru1.SetReadOnly(true);
2.ÅжÏeditÖйâ±ê״̬²¢µÃµ½Ñ¡ÖÐÄÚÈÝ(richeditͬÑùÊÊÓÃ) int nStart,nEnd; CStringstrTemp;
shuru1.GetSel(nStart,nEnd); if(nStart== nEnd) {
strTemp.Format(_T(\¹â±êÔÚ%d\ ),nStart); AfxMessageBox(strTemp); } else {
//µÃµ½editÑ¡ÖеÄÄÚÈÝ
shuru1.GetWindowText(strTemp);
strTemp= strTemp.Mid(nStart,nEnd-nStart); AfxMessageBox(strTemp); }
ÆäÖÐnStartºÍnEnd·Ö±ð±íʾ¹â±êµÄÆðʼºÍÖÕֹλÖ㬴Ó0¿ªÊ¼¡£strTemp.Format·½·¨ÓÃÓÚ¸ñʽ»¯×Ö·û´®¡£AfxMessageBox(strTemp)ÏÔʾһ¸öÌáʾ¶Ô»°¿ò£¬ÆäÄÚÈÝÊÇ×Ö·û´®strTemp¡£ strTemp= strTemp.Mid(nStart,nEnd-nStart)·µ»ØÒ»¸ö±»½ØÈ¡µÄ×Ö·û´®£¬´ÓnStart¿ªÊ¼£¬³¤¶ÈΪnEnd-nStart¡£Èç¹ûnStart== nEnd˵Ã÷ûÓÐÑ¡ÔñÎı¾¡£ ×¢£ºSetSel(0,-1)±íʾȫѡ;SetSel(-1,i)±íʾɾ³ýËùÑ¡¡£ 3.ÔÚeditµÄĩβÌí¼Ó×ֶΣº CString str;
shuru1.SetSel(-1,-1); shuru1.ReplaceSel(str);
4.ËæÊäÈë×Ô¶¯¹ö¶¯µ½×îºóÒ»ÐÐ(richeditͬÑùÊÊÓÃ)
shuru1.PostMessage(WM_VSCROLL, SB_BOTTOM, 0);
×¢£º×÷ÃÜÂëʹÓã¬ÉèÖÃÃÜÂëÑÚÂë×Ö·ûÓÃSetPasswordChar('*')·½·¨¡£ 5.ÈçºÎÏÞÖÆeditÊäÈëÖ¸¶¨×Ö·û
´´½¨Ò»¸öCEditµÄ×ÓÀ࣬×Ô¶¯»¯£¬²¢´´½¨×ÓÀàµÄWM_CHARÀàÐ͵ÄÏûÏ¢£º voidCyxEdit::OnChar(UINTnChar, UINTnRepCnt, UINTnFlags) {
// TODO:ÔÚ´ËÌí¼ÓÏûÏ¢´¦Àí³ÌÐò´úÂëºÍ/»òµ÷ÓÃĬÈÏÖµ if ( (nChar>= '0'&&nChar<= '9') || (nChar>= 'a'&&nChar<= 'f') || (nChar>= 'A'&&nChar<= 'F') || nChar == VK_BACK ||
nChar == VK_DELETE) //msdnµÄvirtual key {
CEdit::OnChar(nChar, nRepCnt, nFlags); } }
Èç¹ûÔÚ¶Ô»°¿ò³ÌÐòÖв»ÄÜÕý³£½ÓÊÕÏûÏ¢£¬Ôò»¹ÐèÒªÖØÔØÐ麯ÊýPreTranslateMessage: BOOLCMFCApplication3Dlg::PreTranslateMessage(MSG* pMsg) {
// TODO:ÔÚ´ËÌí¼ÓרÓôúÂëºÍ/»òµ÷ÓûùÀà
SendMessage(pMsg->message,pMsg->wParam,pMsg->lParam);
returnCDialogEx::PreTranslateMessage(pMsg);//»òreturn 0; }
ÕâÑù²ÅÄÜÕý³£½ÓÊÕVM_CHARÏûÏ¢¡£ 6.ÈçºÎʹÓÃrichedit Ìí¼ÓAfxInitRichEdit(); CxxxApp::InitInstance() £û
AfxInitRichEdit(); ............. £ý
×¢Ò⣺Èç¹û²»Ìí¼Ó¸Ã·½·¨£¬¿ÉÄÜ»áÔì³É¶Ô»°¿òÎÞ·¨Éú³É»òÆô¶¯£¬³ÌÐòÉÁÍ˵ÈÏÖÏó¡£ 7.¸Ä±äricheditÖ¸¶¨ÇøÓòµÄÑÕÉ«¼°×ÖÌå CHARFORMAT cf;
ZeroMemory(&cf,sizeof(CHARFORMAT)); cf.cbSize = sizeof(CHARFORMAT);
cf.dwMask = CFM_BOLD | CFM_COLOR | CFM_FACE | CFM_ITALIC | CFM_SIZE | CFM_UNDERLINE; cf.dwEffects= 0;
cf.yHeight =12*12; //ÎÄ×ָ߶È
cf.crTextColor= RGB(200,100, 255); //ÎÄ×ÖÑÕÉ« *cf.szFaceName= *_T(\Á¥Êé\ ); //ÉèÖÃ×ÖÌå´ý¶¨ shuru2.SetSel(1, 5); //ÉèÖô¦ÀíÇøÓò shuru2.SetSelectionCharFormat(cf); 8.ÉèÖÃÐмä¾à£¨Ö»ÊÊÓÃÓÚrichedit2.0£© PARAFORMAT2 pf2;
pf2.cbSize = sizeof(PARAFORMAT2);
pf2.dwMask = PFM_LINESPACING | PFM_SPACEAFTER; pf2.dyLineSpacing= 200; pf2.bLineSpacingRule= 4; shuru2.SetParaFormat(pf2); ComboBox Contorl:
1.ÔÚ±à¼×´Ì¬ÏµãÄǸö¿Ø¼þµÄÏòϵÄÈý½ÇÐΣ¬¾Í³öð³öÀ´Ò»¸ö¿ÉÒÔµ÷¸ß¶ÈµÄ¶«¶«¡£½«¸ß¶Èµ÷¸ß£¬·ñÔòÔÚÖ´ÐÐʱ»á²»ÄÜÏÔʾÏÂÀÑ¡Ïî¡£
2.ΪcomboboxÌí¼ÓÑ¡ÏÔÚ±à¼×´Ì¬ÏÂÑ¡combobox¿Ø¼þµÄÊôÐÔ£¬Ñ¡Data±êÇ©£¬Ôڱ༿òÖÐÌí¼ÓÑ¡ÏѡÏî¼äÓÃ;·Ö¸î¡£