我怎样把EDIT控件中当前光标左边的苦干个字符取出来?
如果通过 ::GetWindowText(hwnd,lpszWindowName,50); 的话,取出的是整个内容,而我要知道的是当前光标左边苦干个字符的内容是什么,应该怎么办?
如果通过 ::GetWindowText(hwnd,lpszWindowName,50); 的话,取出的是整个内容,而我要知道的是当前光标左边苦干个字符的内容是什么,应该怎么办?
解决方案 »
- 菜鸟提问:有关vc读取Access数据库的问题!急!!!
- OpenGL里的点坐标是怎么样的(100分高分请教)
- 关于小波变换的问题?
- 怎么样用CString型或者char *接受BSTR *的返回值啊
- 如何在SDK中用DialogBox建的对话框中处理按键消息?
- 小问题一个
- 看到网上有一个平衡二叉树的模板,本来拿来用的,可是
- VC开发firefox插件的问题
- Win32后门程序,WaitForSingleObject直接返回
- 请问何获得网上邻居的IP(空)
- 高手们,请教有关windows的资源限制问题
- windows XP防火墙是否可以阻止dll注入到系统进程?或者windows有什么其他设置可以组织dll注入到系统进程吗?谢谢
首先getcoursorpos 得到光标位置
其次getwindowtext得到edit里边的内容
让后用mid得到你要得到的内容
(HWND) hWnd, // handle to destination window
EM_GETSEL, // message to send
(WPARAM) wParam, // starting position (LPDWORD)
(LPARAM) lParam // ending position (LPDWORD)
);
int nEndChar = 0;
m_edit.GetSel(nStartChar, nEndChar);CString str;
m_edit.GetWindowText(str);
str = str.Left(nStartChar);MessageBox(str);
SendMessage (hwndEdit, EM_SETSEL, iStart, iEnd) ;
后,iStart和iEnd的值都为0啊?
光标在最前面也会得到空串?注意获得时应该是EM_GETSEL。
char buf[256];
SendMessage(hEdit,EM_GETSEL,(LPARAM)&A1,(WPARAM)&A2);
GetWindowText(hEdit,buf,A1+1);char *p=buf+A1-3;
比较详细。看msdn.