LINUX.ORG.RU

QТелепатия :)

 


0

1

Кинул на форму QLineEdit && QPushButton и вот как они взаимодействуют:

Trash::Trash(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Trash)
{
    ui->setupUi(this);
    connect(ui->find, SIGNAL(clicked()),
            this, SLOT(select()));
    blocked_words = 0x0;
    word_counter = 0;
}


void Trash::select(){
    if (blocked_words == 0x0) return;

    for (int i = 0; i < word_counter; i++){
        if (blocked_words[i].text() == ui->lineEdit->text()){
            blocked_words[i].setChecked(true);
            break;
        }
    }
}
И вдруг это превзошло мои ожидания :) «ентер» в поле ввода вызывает не подключенный к нему обработчик select. Я так и хотел сделать но оно уже готово :). Интересно в чем секрет? (они объедены QHBoxLayout и созданы дизайнером формы).

★★★★

Последнее исправление: LinuxDebian (всего исправлений: 1)
Ответ на: комментарий от crowbar

Тогда не работает ничего :) (не кнопка ни клавиша)

LinuxDebian ★★★★
() автор топика

может быть т.к. батон стоит следующим в очереди табуляции, интером перескакивает на следующий элемент(в данном случае кнопку) и вызвает clicked()? Это предположение, не уверен что оно так и работает.

Blastbit
()
Ответ на: комментарий от crowbar

Да, вы правы но анимация не срабатывает на ней и фокус ТексЛайн не теряет. Опасненько както...

LinuxDebian ★★★★
() автор топика
Ответ на: комментарий от Blastbit

Похоже на то если кинуть между ними кнопку и выставить ей чекабле, то видно как она кликает но фокус не преобретает, это баг или фича? Как по мне баг, я же хрен знает что на нее повесить могу...

LinuxDebian ★★★★
() автор топика
Ответ на: комментарий от LinuxDebian

я думаю это фича, т.к. часто формы заполняются сразу кучей и переключение по интеру частое явление. В QLineEdit нельзя же использовать табуляцию(вроде бы) и перевод строки, по этому логично перевести. Но насчет срабатывания нажатия на следующий, хз даже. Я думаю это можно отключить, нужно только покопать документацию и найти нужное свойство.

Blastbit
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.