Название: QLineEdit обработка измененного текста Отправлено: trot от Июль 13, 2010, 18:04 Помогите пожайлуста.
Необходимо обработать изменный текст в QLineEdit. Создал слот, который начинает работу по сигналу editingFinished. В этом слоте пытаюсь оценить, был ли изменен текст. Для этого использовал метод isModified (), но он всегда возвращает true. Что посоветуете? Название: Re: QLineEdit обработка измененного текста Отправлено: kibsoft от Июль 13, 2010, 20:41 А чем сигнал textChanged не подходит?
Название: Re: QLineEdit обработка измененного текста Отправлено: trot от Июль 14, 2010, 11:35 Он срабатывает при вводе каждого символа. Хотелось бы после редактирования текста понять, был ли он изменен.
Название: Re: QLineEdit обработка измененного текста Отправлено: GreatSnake от Июль 14, 2010, 12:43 Цитировать Для этого использовал метод isModified (), но он всегда возвращает true. Хм, странно.Могу посоветовать при установке начального текста дублировать его через setPropery( "init_value", string ) и уже в editingFinished() слоте проверять текущее значение с начальным if( text() != property( "init_value" ).toString() ) ; // modified Название: Re: QLineEdit обработка измененного текста Отправлено: kibsoft от Июль 14, 2010, 14:28 isModified возвращает true при любом редактировании, даже если например в едите было: "xxx", юзер стер, а потом снова написал "xxx".
Сбрасывается в false при setText(). Так что выход один - делать как сказал GreatSnake. Название: Re: QLineEdit обработка измененного текста Отправлено: trot от Июль 14, 2010, 18:31 Спасибо всем за ваши советы.
|