Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.223.171.12] |
|
Сообщ.
#1
,
|
|
|
Есть компонент текстового поля с маской IDC_EDIT1, которому соответствует переменная m_IDC_EDIT1 типа CMFCMaskedEdit.
Как сделать так, чтобы при щелчке "мыши" на её левую кнопку курсор в этом текстовом поле становился на первый символ в нём? Нужно создать класс CMyMFCMaskedEdit, который является потомком класса CMFCMaskedEdit. Но какие функции следует переопределить и что следует написать в коде переопределения? |
Сообщ.
#2
,
|
|
|
Цитата erslgoeirjh @ Есть компонент текстового поля с маской IDC_EDIT1, которому соответствует переменная m_IDC_EDIT1 типа CMFCMaskedEdit. Как сделать так, чтобы при щелчке "мыши" на её левую кнопку курсор в этом текстовом поле становился на первый символ в нём? Не могу гарантировать на 100%, но вроде припоминаю, что узнать/изменить положение курсора в Edit - контроле можно посредством сообщений EM_GETSEL/EM_SETSEL. При этом, если не используется выделение текста, два параметра будут просто равны друг другу. Для 1-й позиции Edit - контрола значение параметра равно 0. Значит, видимо надо сделать: ::SendMessage(hwndEdit,(UINT)EM_SETSEL,(WPARAM)0,(LPARAM)0); ::SetFocus(hwndEdit); |