Russian Qt Forum
Апрель 27, 2024, 17:01 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Ограничение на ввод определенного количества символов в QTextEdit  (Прочитано 8807 раз)
merke
Гость
« : Август 24, 2010, 09:39 »

Код:
void MainWindow::on_textEdit_textChanged()
{
    ui->label_4->setText(QString::number(ui->textEdit->toPlainText().count()) + QString::fromLocal8Bit(" из 100"));
    if (ui->textEdit->toPlainText().count() >= 100){
        QString str;
        str = ui->textEdit->toPlainText().mid(0, 99);
        ui->textEdit->setText(str);
    }
}

Реализация не самая рациональная. Предлагайте свои!
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Август 24, 2010, 16:43 »

ui->label_4->setText(QString::number(ui->textEdit->toPlainText().count()) + QString::fromLocal8Bit(" из 100")); не в тему.
Перед ui->textEdit->setText(str); сохрани позицию курсора и селекшн, а потом их восстанови.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
AAS
Гость
« Ответ #2 : Октябрь 07, 2010, 08:43 »

А можно просто ui->label->setMaxLength(100);
или в Qt Designer поменять свойство.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.042 секунд. Запросов: 23.