没时间了,帮忙,如何取得编辑框(EDIT)内选择的文本(用鼠标拖动选择之后蓝色高亮显示的文本)?

解决方案 »

  1.   

    Send Key "CTl+C" copy the selected text,
    then you can get it in "Clipboard", I try it in VB, try it.....
      

  2.   

    我用了 EM_GETSEL 和 EM_GETSELTEX消息。EM_GETSEL消息可以取得选定文本的起始点和终点
    EM_GETSELTEXT 消息却取不到。我是这样做的。  HWND hwnd = ::GetFocus();
        int nLen =0;
        DWORD nBegin =0, nEnd =0;
        char strText[256]; memset(strText,0,256);
        ::SendMessage(hwnd,EM_GETSEL,(WPARAM)&nBegin,(LPARAM)&nEnd)
        CString N;
        N.Format("beign:%d\nend:%d",nBegin,nEnd);
        AfxMessageBox(N);   //可以取得nBegin,nEnd值,都不是0
        
        nLen = ::SendMessage(hwnd,EM_GETSELTEXT,0,(LPARAM)strText)
        // nLen 的值仍为0
      

  3.   

    剪切板可以。但问题又来了。我可以用WM_PASTE把copy的字符放到编辑框中。但怎么才能从剪切板中将字符取出来。