我在建立类向导里给我的Cedit注册了一个变量叫 m_edit,但是用m_edit.SetFocus(),好像得到的是标题栏的焦点,因为我紧接着用GetWindowText(temp),得到的temp的值是标题栏的值……或者有没有其他的方法,我就是想将m_edit设置为焦点,然后得到他的值……

解决方案 »

  1.   

    m_edit.GetWindowText(temp)取不到值么?
      

  2.   

    要得到Cedit的值, GetWindowText你应该传入edit的句柄, 或者用Cedit对象来调用GetWindowText
      

  3.   

    就用Cedit对象调用的GetWindowText,得到的是标题栏的值……我这么用主要是还有很多Cedit控件,没有名字,我拿到一个,然后好用GetNextTab…………记不住了,用这个函数去拿其他的,所以我必须先拿到第一个Cedit的值才行……
      

  4.   

    我怎么觉得你描述的这么乱呢
    为什么要m_edit.SetFocus
    这句是在哪调用的
    然后为什么会调用GetWindowText取值
    这个肯定是获取标题栏啊
    你到你想实现什么需求呢?
      

  5.   

    木看明白
    不过可以告诉你
    获得焦点setfocus肯定是可以滴
      

  6.   

    注意对话框的默认按钮注意看TAB顺序可以试试GetDlgText这类的函数
      

  7.   

    SetFocus将text控件设为焦点是可以的。
    另外GetWindowText取值和焦点也没有关系,它取的是相关窗口的文字,如果你在窗口中写的话,它取的就是标题栏。如果你想取控件的值要写成:m_edit.GetWindowText
      

  8.   

    edit控件还有标题栏?
    你说的是不是对话框的标题栏?
      

  9.   

    用EDIT控件对应的ID设置试试,比如((CEdit *)GetDlgItem(ID_EDIT1))->SetFocus();
    ((CEdit *)GetDlgItem(ID_EDIT1))->GetWindowText();
      

  10.   

    m_edit.SetFocus();设置焦点
    CString str;
    m_edit.GetWindowText(str);得到edit控件的内容