Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: dr_Begemot от Апрель 10, 2009, 15:13



Название: обработка сигнала textChanged для цифр
Отправлено: dr_Begemot от Апрель 10, 2009, 15:13
есть некий QLineEdit, к которому применен QDoubleValidator.

делаю коннект, который при сигнале textChanged(QString) вызывает слот setMin(QString).

connect(view()->editMin, SIGNAL(textChanged(QString)), this, SLOT(setMin(QString)));

В слоте setMin переменная переводится в double, сохраняется в некоторой переменной и... и вызывается сигнал minChanged(QString)........
Проблема в том, что существует коннект

connect(this, SIGNAL(minChanged(QString)), view()->editMin, SLOT(setText(QString)))

Например я хочу ввести в editMin число 10e10, когда вводишь число 10е1, строка сразу же преобразуется к виду: 100!
Как быть?)


Название: Re: обработка сигнала textChanged для цифр
Отправлено: EhTemka от Апрель 10, 2009, 15:33
Может проблема в обратном преобразовании double в QString, который ты передаешь в сигнал minChanged(QString)?

Код
C++ (Qt)
string.setNum(doubleVar, 'е', precision);
 
Ты это так делаешь?


Название: Re: обработка сигнала textChanged для цифр
Отправлено: dr_Begemot от Апрель 10, 2009, 16:01
Может проблема в обратном преобразовании double в QString, который ты передаешь в сигнал minChanged(QString)?

Код
C++ (Qt)
string.setNum(doubleVar, 'е', precision);
 
Ты это так делаешь?


Нет, обратное преобразование делаю так:
Код
C++ (Qt)
QString::number(m_min);
 


Название: Re: обработка сигнала textChanged для цифр
Отправлено: EhTemka от Апрель 10, 2009, 16:32
Делай так, как я написал  ;)