Edit не дает вводить дробные числа — как исправить?
Было св-во Number TRUE, поставил FALSE теперь когда нажимаю точку переходит в начало и ставит в результате вместо 5,2 в окне 0,52
Edit не дает вводить дробные числа
Модераторы: Duncon, Hawk, Romeo, Eugie
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
В какой среде пишем?
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
в VS 7.0
Сделал так - перед вызовом UpDate() запоминаю положение курсора - после повторного вызова устанавливаю его. Но често как то это коряво.
Сделал так - перед вызовом UpDate() запоминаю положение курсора - после повторного вызова устанавливаю его. Но често как то это коряво.
Неправильно ты делаешь. Для этого лучше использовать субклассинг. Создаёшь класс, производный от CEdit, например CNumEdit. В нём перехватываешь сообщение WM_CHAR и делаешь так, чтобы обработчик пропускал только цифры, точку или запятую, знак минус(если нужно) и символ VK_BACK. Остальные символы он должен просто игнорировать. С помощью DDX объект этого класса должен быть связан с соответствующим элементом окна диалога. Вот и всё.