Russian Qt Forum

Qt => Общие вопросы => Тема начата: pablo от Декабрь 01, 2004, 19:19



Название: QValidator
Отправлено: pablo от Декабрь 01, 2004, 19:19
Господа я делаю новый валидатор для ввода с клавы:
QValidator* validator = new QIntValidator( 0, 9, this );

 для получения нормальных данных, подключаю его к слоту,

connect( unionLineEdit_1, SIGNAL( textChanged(const QString&) ), this, SLOT( enableUnionButton() ) );
    connect( unionLineEdit_2, SIGNAL( textChanged(const QString&) ), this, SLOT( enableUnionButton() ) );

void UnionFind::enableUnionButton()
{
    bool condition_1 = unionLineEdit_1->hasAcceptableInput() && unionLineEdit_2->hasAcceptableInput();
    bool condition_2= unionLineEdit_1->text() != unionLineEdit_2->text();
   
    unionButton->setEnabled( condition_1 == true && condition_2 ==  true );
   
}
     
когда я запускаю прогу, вписываю значения в , то у меня комп выкидывает segmentation fault.


Если же я не соединяю сигнал со слотом то ошыбок нет, только вводить можно всё что душе угодно, а мне это не подходит. :(

Может подскажте где может быть ошибка, и при возможности, как её исправить ?


Название: QValidator
Отправлено: Zmey от Декабрь 02, 2004, 09:23
А ты сделал unionLineEdit_1->setValidator(validator)?


Название: QValidator
Отправлено: pablo от Декабрь 02, 2004, 09:26
Ну конечно делал, но ничего не помогает.:(


Название: QValidator
Отправлено: Sergeich от Декабрь 02, 2004, 09:43
Попробуй сделать 2 валидатора : первый для lineEdit1, второй - для lineEdit2.