精华内容
下载资源
问答
  • MFC Edit控件 追加文本

    2016-01-12 09:18:00
    //追加文本EditControl voidInstmDebugMainDlg::AppendText(intcontrolId,CStringstrAdd) { ((CEdit*)GetDlgItem(controlId))->SetSel(GetDlgItem(controlId)->GetWindowTextLength(),GetDlgItem(c...
    // 追加文本到EditControl
    void  InstmDebugMainDlg::AppendText( int  controlId, CString strAdd)
    {
         ((CEdit*)GetDlgItem(controlId))->SetSel(GetDlgItem(controlId)->GetWindowTextLength(),GetDlgItem(controlId)->GetWindowTextLength());
         ((CEdit*)GetDlgItem(controlId))->ReplaceSel(strAdd+L "\n" );
    }
     
     
    MFC/C++ QQ交流群 322491983

    转载于:https://www.cnblogs.com/xuandi/p/5123266.html

    展开全文
  • MFC EditControl控件实现字符输入过滤。例子中包含了Edit输入Window文件名时,对非法字符的过滤;仅输入正数、正负数;以及自定义添加多个字符的过滤。对于其他字符过滤设计,可参考该demo思路。VS2010 Unicode
  • 属性设置 添加变量 添加代码 CString str; str.Format(L"程序启动\r\n"); m_info.ReplaceSel(str); str.Format(L"程序启动第二行\r\n"); m_info.ReplaceSel(str); 运行

    属性设置

    在这里插入图片描述

    在这里插入图片描述

    添加变量

    在这里插入图片描述

    添加代码

    	CString str;
    	str.Format(L"程序启动\r\n");
    	m_info.ReplaceSel(str);
    
    	str.Format(L"程序启动第二行\r\n");
    	m_info.ReplaceSel(str);
    

    运行

    在这里插入图片描述

    展开全文
  • MFC EDIT控件中改变背景色和文字颜色

    千次阅读 2018-06-11 15:32:09
    这里介绍的改变文本编辑框的背景颜色的方法,不需要对CEdit生成新的类,步骤如下:(1) 新建一个基于对话框的MFC应用程序,程序名称为Test(2) 在对话框上添加两个文本框,ID分别为IDC_EDIT1和IDC_EDIT2(3) 在CTestDlg...
    这里介绍的改变文本编辑框的背景颜色的方法,不需要对CEdit生成新的类,步骤如下:
    
    (1) 新建一个基于对话框的MFC应用程序,程序名称为Test

    (2) 在对话框上添加两个文本框,ID分别为IDC_EDIT1和IDC_EDIT2

    (3) 在CTestDlg的头文件中添加几个成员变量,如下所示:
    1. class CTestDlg : public CDialog  
    2. {  
    3. protected:  
    4. CBrush m_redbrush,m_bluebrush;  
    5. COLORREF m_redcolor,m_bluecolor,m_textcolor;  
    6. };  


    (4) 在CTestDlg.cpp文件的BOOL CTestDlg::OnInitDialog()中添加以下代码:

    1. BOOL CTestDlg::OnInitDialog()  
    2. {  
    3. CDialog::OnInitDialog();  
    4.   
    5. // Set the icon for this dialog. The framework does this automatically  
    6. // when the application's main window is not a dialog  
    7. SetIcon(m_hIcon, TRUE);    // Set big icon  
    8. SetIcon(m_hIcon, FALSE);   // Set small icon  
    9.   
    10. m_redcolor=RGB(255,0,0);                      // 红色  
    11. m_bluecolor=RGB(0,0,255);                     // 蓝色  
    12. m_textcolor=RGB(255,255,255);                 // 文本颜色设置为白色  
    13. m_redbrush.CreateSolidBrush(m_redcolor);      // 红色背景色  
    14. m_bluebrush.CreateSolidBrush(m_bluecolor);    // 蓝色背景色  
    15. return TRUE; // return TRUE unless you set the focus to a control  
    16. }  


    (5) 右击对话框空白面,选择Event,为WM_CTLCOLOR添加消息响应函数,编辑代码如下:

    1. HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)  
    2. {  
    3. HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);  
    4.   
    5. // TODO: Change any attributes of the DC here  
    6. switch (nCtlColor) //对所有同一类型的控件进行判断  
    7. {  
    8.    // process my edit controls by ID.  
    9. case CTLCOLOR_EDIT:  
    10. case CTLCOLOR_MSGBOX://假设控件是文本框或者消息框,则进入下一个switch  
    11.    switch (pWnd->GetDlgCtrlID())//对某一个特定控件进行判断  
    12.    {      
    13.     // first CEdit control ID  
    14.    case IDC_EDIT1:         // 第一个文本框  
    15.     // here  
    16.     pDC->SetBkColor(m_bluecolor);    // change the background  
    17.     // color [background colour  
    18.     // of the text ONLY]  
    19.     pDC->SetTextColor(m_textcolor); // change the text color  
    20.     hbr = (HBRUSH) m_bluebrush;    // apply the blue brush  
    21.     // [this fills the control  
    22.     // rectangle]  
    23.     break;    
    24.     // second CEdit control ID  
    25.    case IDC_EDIT2:         // 第二个文本框  
    26.     // but control is still  
    27.     // filled with the brush  
    28.     // color!  
    29.     pDC->SetBkMode(TRANSPARENT);   // make background  
    30.     // transparent [only affects  
    31.     // the TEXT itself]  
    32.     pDC->SetTextColor(m_textcolor); // change the text color  
    33.     hbr = (HBRUSH) m_redbrush;     // apply the red brush  
    34.     // [this fills the control  
    35.     // rectangle]  
    36.     break;  
    37.    default:  
    38.     hbr=CDialog::OnCtlColor(pDC,pWnd,nCtlColor);  
    39.     break;  
    40.    }  
    41.    break;  
    42. }  
    43. // TODO: Return a different brush if the default is not desired  
    44. return hbr;  
    45. }  


    注:case的类别有以下几种:
    CTLCOLOR_BTN 按钮控件
    CTLCOLOR_DLG 对话框
    CTLCOLOR_EDIT 编辑框
    CTLCOLOR_LISTBOX 列表框
    CTLCOLOR_MSGBOX 消息框
    CTLCOLOR_SCROLLBAR 滚动条
    CTLCOLOR_STATIC 静态文本

    展开全文
  • MFC在使用EditControl控件作为字符输入时,如输入windows文件名等情况,为EditControl控件添加相应的过滤规则以应对不同的使用场景。 常见情况:1、Windows非法字符过滤;  2、仅输入数字(正数、正负数)等情况...

           MFC在使用EditControl控件作为字符输入时,如输入windows文件名等情况,为EditControl控件添加相应的过滤规则以应对不同的使用场景。

    常见情况:1、Windows非法字符过滤;

                        2、仅输入数字(正数、正负数)等情况;

                        3、自定义过滤字符或字符串。


    解决思路:

                     1、为EditControl控件添加变量CString型或Control型均可,EditControl实现过滤本质为对输入字符串的判断,当包含非法字符时自动删除非法字符;

                     2、为EditControl控件添加EN_CHANGE消息,当EditControl输入字符发生变化时即触发该消息。

                     3、重载该消息,添加过滤规则。


    示例:

                1、为控件添加Value--CString型变量m_editInfo;




                 2、为EditControl天剑EN_CHANGE消息


                3、添加过滤规则,以windows文件名非法字符过滤为例

    UpdateData(TRUE);
    
    if (m_editInfo.Find('/')>=0 || m_editInfo.Find('\\')>=0 || m_editInfo.Find('|')>=0 ||
        m_editInfo.Find(':')>=0 || m_editInfo.Find('\?')>=0 || m_editInfo.Find('\"')>=0 ||
        m_editInfo.Find('*')>=0 || m_editInfo.Find('<')>=0 || m_editInfo.Find('<')>=0)
    		{
    			int  tem_nEditSize = m_editInfo.GetLength();
    			m_editInfo = m_editInfo.Left(tem_nEditSize-1);
    
    			UpdateData(FALSE);
     			if (m_editInfo.GetLength()>0)
     			{
     				//设置Edit光标至末尾,否则光标会跳至段首
     				((CEdit*)GetDlgItem(IDC_EDIT_INPUT))->SetSel(m_editInfo.GetLength(), m_editInfo.GetLength());
     			}
    		}



    备注:1、实现数字输入时可通过CString->int/float等进行转换;

                 2、简单的数字范围滤除可添加Edit——Value——int型变量,设置输入范围;

                 3、更多过滤示例,解决思路可参考Demo

    http://download.csdn.net/download/kui1989tkol/10198214






    展开全文
  • mfc EDIT字体颜色

    2014-12-08 14:56:00
    改变Edit字体颜色: 1、CMyDlg类中添加成员变量: CBrush m_Brush; 2、OnInitDialog中初进行设置: m_brush.CreateSolidBrush(RGB(0,255,255)); 3、添加消息响应函数:OnCtlColor if(nCtlColor == CTLCOLOR_...
  • MFC edit control 用法

    万次阅读 2010-06-17 11:16:00
    1.用SetWindowText设置文本内容并换行:其中控件属性设置:MultiLine=true; want Return = true; strMsg+=s+"/r/n";// 用/r/n换行。 //获得EDIT CEdit* pBoxOne; pBoxOne = (CEdit*) GetDlgItem(IDC_EDIT1); ...
  • MFC 添加richedit控件

    千次阅读 2016-12-24 12:19:15
    使用richedit控件 1)初始化//必须加,否则无法显示窗口 CXXXApp::CXXXApp() //找到应用类 { // TODO: add construction code here, // Place all significant initialization in InitInstance  ...
  • MFC 中有一编辑框 ID 为 IDC_EDIT_PATH,那么步骤如下: 在 *Dlg.h 的 class *Dlg 里添加成员变量CToolTipCtrl m_tooltip; 在*Dlg::OnInitDialog()函数里创建线程m_tooltip.Create(this); 并设置相关参数,具体...
  • MFC edit控件实现自动换行

    万次阅读 2016-07-08 17:22:51
    必须设置Vertical Scrollbar = TRUE 必须设置MultiLine = TRUE 必须设置Horizontal Scrollbar = FALSE 必须设置Auto HScroll = FALSE 可选设置Want Return = FALSE  可选设置Auto VScroll = ...
  • MFC中向Edit control控件尾部添加字符串。 void addInfo2RecvWnd(CString strMSG) { int infoLength = 0; CString info = _T(">>"); // 获取当前时间 info += getCurrentTime() + _T("\r\n"); info += ...
  • 所以改用edit control,运行后发现只显示最后一个进程,不能循环显示 控件代码如下: ``` void Cprocessor1Dlg::OnBnClickedEnumProcess() { // TODO: 在此添加控件通知处理程序代码 CString str; PROCESS...
  • MFC EDIT控件多行滚动

    千次阅读 2015-05-18 10:14:25
    1.edit控件属性设置 Mutiline true, Want Return true,Auto VScroll true, Vertical Scroll true 2.为edit控件关联2变量 .h文件 //Edit控件 CEdit m_ctrlShowHrv; //Control类型变量 CString m_strShowHrv; ...
  • mfc edit ctrl问题求解

    2016-03-03 09:23:09
    edit ctrl编辑框,添加变量m_value为float类型。设置m_value = 2000000时即200万时,文本显示方式为科学计数法2e+006. 如何才能让它显示自然数2000000。 PS:数值小的时候是正常的自然数显示。编辑框长度足够用...
  • vc MFC edit box 控件使用

    千次阅读 2011-10-14 23:01:40
    SetSel(start,end)作用: 定制EDIT的所选择内容.间接地可以用于定位光标位置. 使用例子: EXP1:设置光标 CEdit* pEdit=(CEdit*)GetDlgItem(IDC_EDIT1);  pEdit->SetSel(2,
  • 如图示: 1的位置内容显示是正确的 2的位置内容就错了 原因: 使用了OnCtlColor的方法设置字体: 这样设置会导致编辑框内容显示不全,正确的做法: 用setFont方法设置字体。
  • 用GetDlgItemText和SetDlgItemText来取得和设置Edit Control文本 BOOL GetDlgItemText( int nID, BSTR& bstrText ) const throw(); virtual void SetDlgItemText( int nID, LPCTSTR lpszString ); nID为...
  • 1、首先创建MFC工程,edit control将背景设置透明,以及怎么添加滚轮(设置几个属性即可),这些我都不介绍了的童鞋可以下方评论,我会详细讲解。 2、现在问题是当我们滚动滑轮时会出现文字叠影问题。如图: 3、...
  • 笔记主要包含Edit Control控件的常用设置、多个Edit Control控件输入时单独判断当前输入控件的内容是否符合要求、Edit Control控件对应的一些消息宏。   1 Edit Control常用属性设置 MFC中很多控件的常用...
  • MFC中为Edit编辑框添加滚动栏

    千次阅读 2018-06-26 15:32:51
    以下几步:1.点击编辑框,之后打开编辑框属性界面2.将以下属性改为TRUE意思依次为:自动换行-自动水平滚动条-自动垂直滚动条-打开水平滚动条-打开垂直滚动条...
  • 新建一个mfc项目,项目名为Test2,按流程操作,点击完成。 删除该行,并增加两个按钮和一个编辑框控件 修改按钮和编辑框的名称和ID Button1修改为 Button2修改为 ...
  • 当鼠标移动到某个控件上时,鼠标周围悬浮一段文本作为提示信息,在窗口的控件上支持悬浮文本,可以通过如下方式实现,本例以文本编辑框控件(Edit Control)为例,如果是类似按钮(Button)这样的属性中有“Notify”项的...
  •  // Scroll the edit control so that the first visible line  //is the first line of text.  if (nFirstVisible > 0)  {  m_myEdit.LineScroll(-nFirstVisible, 0);  } CEdit::Line...
  • MFC透明Edit

    千次阅读 2014-10-30 08:09:27
    最后使Edit控件的文字背景透明即可。 (2)另外注意要将Edit控件的Multiline(多行)属性设为TRUE。 3、关键代码: (1)TransparentEdit.h #pragma once // CTransparentEdit class ...
  • MFC单文档对话框中添加工具栏,在工具栏中添加了一个LABEL控件和一个EDIT控件,放在对话框的底部,在对话框中添加了两个EDIT控件,在EDIT输入什么内容那么在工具栏的EDIT控件中就显示什么内容。挺好玩的,希望大家...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,872
精华内容 2,748
关键字:

mfcedit添加文本