zoukankan      html  css  js  c++  java
  • 获取编辑框内容的几种方法

    1.GetDlgItem获取文本编辑框的指针来获取内容

    先使用 GetDlgItem(编辑框的ID)获取编辑框的指针。

    再指向编辑框的GetWindowText函数将获取内容保存至指定的字符数组里。

    下面是代码。

         int num1,num2,num3;

         char char1[10],char2[10],char3[10];

         GetDlgItem(IDC_EDIT1)->GetWindowText(char1,10);

         GetDlgItem(IDC_EDIT2)->GetWindowText(char2,10);

         num1=atoi(char1);

         num2=atoi(char2);

         num3=num2+num1;

         itoa(num3,char3,10);

         GetDlgItem(IDC_EDIT3)->SetWindowText(char3);

     

    2.使用 GetDlgItemText 函数获取文本框的内容。

    GetDlgItemText 函数 从代码分析上来看,GetDlgItemText 函数是第一种方法的简写版。

     

         int num1,num2,num3;

         char char1[10],char2[10],char3[10];

     

         GetDlgItemText(IDC_EDIT1,char1,10);

         GetDlgItemText(IDC_EDIT2,char2,10);

         num1=atoi(char1);

         num2=atoi(char2);

         num3=num2+num1;

         itoa(num3,char3,10);

         SetDlgItemText(IDC_EDIT3,char3);

     

    3.,使用 GetDlgItemInt来直接获取数值内容。

    第二个例子是获取的文本内容,转成数值内容的话,就得使用atoi函数比较麻烦 就可以使用GetDlgItemInt来直接获取数值内容。

     

    代码如下

         int num1,num2,num3;

         char char1[10],char2[10],char3[10];

     

         num1=GetDlgItemInt(IDC_EDIT1);

         num2=GetDlgItemInt(IDC_EDIT2);

         num3=num1+num2;

         SetDlgItemInt(IDC_EDIT3,num3);

     

    4.第四种方法在类的定义 变量 来关联 控件

    单击 查看—建立类向导—Member Variables选项卡 单击对应的Control Ids的名称

    在Member variable name填入 一个变量名即可。

     

    如果想直接取值的话 ,在category中选择Value,那么这个变量名就是对应的值

         UpdateData();

         m_edit3=m_edit1+m_edit2;

         UpdateData(false);

     

    可以选择数据类型,来定义变量的数据类型。

     

    如果是文本型的。

    就在Category中选择 control,那么,这个变量名,就对应这个控件。就利用这个变量名进行操作。

         int num1,num2,num3;

         char char1[10],char2[10],char3[10];

     

         m_the_edit1.GetWindowText(char1,10);

         m_the_edit2.GetWindowText(char2,10);

         num1=atoi(char1);

         num2=atoi(char2);

         num3=num1+num2;

         itoa(num3,char3,10);

         m_the_edit3.SetWindowText(char3);

     

     

    5.第五种使用SendMessage获取编辑框内容。

    使用发送消息的方式。

    (1)。采用全局类的SendMessage来发送获取消息内容的。

    注意 第一个参数是目标窗口控件的句柄,第二个参数是固定的表示符,第三个是第四个字符变量的大小,第四个是字符变量数组的指针。

    ::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)char1);

    也可以这要获取句柄。

    ::SendMessage(m_the_edit1.m_hWnd,WM_GETTEXT,10,(LPARAM)char1);

    (2)。在窗口类中也有SendMessage函数。

    GetDlgItem(IDC_EDIT1)->SendMessage(WM_GETTEXT,10,(LPARAM)char1);

    或者这样

    m_the_edit1.SendMessage(WM_GETTEXT,10,(LPARAM)char1);

     

    也有省事的SendDlgItemMessage 函数,可以直接发送获取文本的消息指指定控件的ID。

    SendDlgItemMessage(IDC_EDIT2,WM_GETTEXT,(LPARAM)char2);





    //**************************************************************************************************
    经验证,用以下方法最最实在:【这是最实在的办法了!太棒了!这样最好了!】

    CString str;
    GetDlgItemText(IDC_EDIT,str);

    MessageBox(str);


    好吧。我承认 我直接用最后一种了,没研究过全部。



  • 相关阅读:
    初学JS——利用JS制作的别踩白块儿(街机模式) 小游戏
    对于大数据量的Json解析
    Json数据中的特殊字符处理
    移动端总结和手机兼容问题
    在DW 5.5+PhoneGap+Jquery Mobile下搭建移动开发环境
    HTML5所有标签汇总
    二叉树
    二分查找
    归并排序
    希尔排序
  • 原文地址:https://www.cnblogs.com/skyhuangdan/p/5486799.html
Copyright © 2011-2022 走看看