Поиск:

Ответ в темуСоздание новой темы Создание опроса
> QTextEdit - запрет скролинга текста, как запретить сколинг текста 
:(
    Опции темы
DK2
Дата 8.3.2011, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 8.3.2011

Репутация: нет
Всего: нет



Подскажите пожайлуста, как запретить скорлинг текста в QTextEdit. Задача состоит в том, что я размещаю этот компонент на форме с нужными мне размерами видимой области. Так вот когда пользователь заполнит всю видимую текстовую область,  то по умолчаю весь вводимый текст начинает скролиться, а это мне не нужно. И еще как узнать, что видимая область заполнена. Все это интересует с тем условием что пользователь может менять шрифт и  размер теста. Надеюсь вопрос ясен.
PM MAIL   Вверх
borisbn
Дата 9.3.2011, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(DK2 @  8.3.2011,  17:19 Найти цитируемый пост)
как запретить скорлинг текста в QTextEdit

Код

QTextEdit::setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );

Цитата(DK2 @  8.3.2011,  17:19 Найти цитируемый пост)
И еще как узнать, что видимая область заполнена.

Не нашёл. Возможно и никак.
Попробуй поиграться с minimumSizeHint() и sizeHint(). Они, почему-то, указаны в QAbstractScrollArea как "Reimplemented Public Functions"... М.б. именно для этого ?



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
DK2
Дата 9.3.2011, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 8.3.2011

Репутация: нет
Всего: нет



QTextEdit::setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff ); - это не поможет, я пробывал полосы скролинга не появляются, но если просто продолжать вводить текст, то скорилин будет идти автоматически.
 Народ, а может следить когда появляются полосы прокрутки? Надо поптобывать, только как отследить такое? Буду пробывать. Может есть какие еще идеи?
PM MAIL   Вверх
DK2
Дата 15.3.2011, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 8.3.2011

Репутация: нет
Всего: нет



народ помогите найти ошибку
используемые переменные объявлены так

QPage **Pages;
QWidget *MultiPageTextArea;
Код

QPage::QPage(QWidget *parent,  int Num)// конструктор класса
{
this->PageNumber = Num;
this->setParent(parent);
this->setGeometry(QRect(10,10,210,297));

this->Indentations[0] = 20;
this->Indentations[1] = 20;
this->Indentations[2] = 20;
this->Indentations[3] = 20;
this->TextEdit->setGeometry(QRect(this->Indentations[0],this->Indentations[1],this->geometry().width()-this->Indentations[2],this->geometry().width()-this->Indentations[3]));
this->TextEdit->setParent(this);

}


 где -то здесь ошибка
Код

QPage **Page1;
int H;
int W;
int XCoord;
int YCoord;

this->PageCount++;
Page1 = new QPage*[this->PageCount-1];

if (this->PageCount > 1) for ( unsigned int i = 0; i<this->PageCount-1; i++ )    Page1[i] = this->Pages[i];
    Page1[this->PageCount-1] = new QPage(this->MultiPageTextAreaContents,this->PageCount);

    if(this->Orientation == poBook){H = 210; W = 297;};
    if(this->Orientation == poLandscape){H = 297; W = 210;};

    if (this->PageCount == 1) XCoord = YCoord = 10;
    if (this->PageCount > 1) {
    XCoord = Page1[this->PageCount - 1]->geometry().left() + Page1[this->PageCount - 1]->geometry().width();
    YCoord = Page1[this->PageCount - 1]->geometry().top()  + Page1[this->PageCount - 1]->geometry().height() + this->Offset;
    };
    Page1[this->PageCount]->setGeometry(QRect(XCoord,YCoord,W,H));

    this->Pages = Page1;


this->setWidget(this->MultiPageTextAreaContents);


Это сообщение отредактировал(а) DK2 - 15.3.2011, 20:04
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0453 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.