Home · All Classes · Main Classes · Grouped Classes · Modules · Functions

Описание Класса QAbstractSpinBox
[модуль QtGui]

Класс QAbstractSpinBox предоставляет счетчик и поле редактирования строки для отображения значения счетчика. Далее...

#include <QAbstractSpinBox>

Наследует QWidget.

Наследуется QDateTimeEdit, QDoubleSpinBox и QSpinBox.

Открытые Типы

Свойства

Открытые Функции

Открытые Слоты

Сигналы

Защищенные Функции

Дополнительные Унаследованные Члены


Подробное Описание

Класс QAbstractSpinBox предоставляет счетчик и поле редактирования строки для отображения значения счетчика.

Данный класс разработан как общий надкласс для таких виджетов, как QSpinBox, QDoubleSpinBox и QDateTimeEdit

Здесь приведены основные свойства класса:

  1. text: Текст, отображаемый в QAbstractSpinBox.
  2. alignment: Выравнивание текста в QAbstractSpinBox.
  3. wrapping: Сбрасывается ли QAbstractSpinBox до минимального значения и наоборот при достижении границ.

QAbstractSpinBox предоставляет виртуальную функцию stepBy(), которая вызывается всякий раз, когда пользователь вызывает изменение счетчика. Данная функция принимает параметр целого типа, информирующий о том, сколько шагов изменения было предпринято. Например, нажание Qt::Key_Down вызывается stepBy(-1).

QAbstractSpinBox также предоставляет виртуальную функцию stepEnabled() для определения позволяется ли нажатие вверх/вниз в данной ситуации. Данная функцию возвращает набор битов StepEnabled.


Описание Типов Членов

enum QAbstractSpinBox::ButtonSymbols

Данное перечисление определяет символы, которые могут быть отображены на кнопках счетчика.

КонстантаЗначениеОписание
QAbstractSpinBox::UpDownArrows0Маленькие стрелки в классическом стиле.
QAbstractSpinBox::PlusMinus1 символы + и -.

См. также QAbstractSpinBox::buttonSymbols.

enum QAbstractSpinBox::StepEnabledFlag
flags QAbstractSpinBox::StepEnabled

КонстантаЗначение
QAbstractSpinBox::StepNone0x00
QAbstractSpinBox::StepUpEnabled0x01
QAbstractSpinBox::StepDownEnabled0x02

Тип StepEnabled - это typedef для QFlags<StepEnabledFlag>. Он содержит комбинацию ИЛИ значений StepEnabledFlag.


Описание Свойств

alignment : Qt::Alignment

Данное свойство содержит выравнивание счетчика.

Возможные Значения: Qt::AlignLeft, Qt::AlignRight и Qt::AlignHCenter.

Выравнивание по умолчанию: Qt::AlignLeft

Попытка установить в качестве выравнивания недопустимую комбинацию флагов ни к чему не приводит.

Функции доступа:

См. также Qt::Alignment.

buttonSymbols : ButtonSymbols

Данное свойство содержит текущий режим символов кнопок.

Возможным значением может быть либо UpDownArrows, либо PlusMinus. Значение по умолчанию: UpDownArrows.

Функции доступа:

См. также ButtonSymbols.

frame : bool

Данное свойство указывает, рисует ли счетчик вокруг себя рамку, или нет.

Если счетчик доступен (по умолчанию), то он рисует рамку вокруг себя, в противном случае счетчик рисуется без рамки.

Функции доступа:

readOnly : bool

Данное свойство указывает, позволяет ли счетчик пользователю изменять свое значение.

Если включен режим "только для чтения", то пользователь может копировать текст в буфер обмена или перетаскивать его, но не может редактировать его.

В режиме "только для чтения" QLineEdit в QAbstractSpinBox не отображает курсор.

Функции доступа:

См. также QLineEdit::readOnly.

specialValueText : QString

Данное свойство содержит текст специального значения.

Если текст установлен, то счетчик отобразит этот текст вместо числового значения, если текущее значение счетчика равно minimum(). Обычно используется для указания того, что установлено специальное (по умолчанию) значение.

Например, если Ваш счетчик позволяет пользователю устанавливать ширину полей в диалоге печати, и Ваше приложение способно автоматически выбрать подходящую ширину полей, то Вы можете задать счетчик способом, подобным следующему:

    QSpinBox marginBox(-1, 20, 1, parent);
    marginBox.setSuffix(" mm");
    marginBox.setSpecialValueText("Auto");

Пользователь сможет выбрать ширину полей из диапазона 0-20 миллиметров, или выбрать "Auto" предоставив выбор ширины полей приложению. В этом случае Ваш код должен интерпретировать значение счетчика -1, как требование пользователя установить ширину полей автоматически.

Все значения, кроме специального, отображаются с префиксом и суффиксом (если установлены), при специальном значении отображается только текст специального значения.

Для предотвращения отображения текста специального значения, установите значение данного свойства в пустую строку. По умолчанию текст специального значения не установлен, т.е. все значения счетчика отображаются как обычно.

Если текст специального значения не установлен, то функция specialValueText() возвращает пустую строку.

Функции доступа:

text : const QString

Данное свойство содержит текст счетчика, включающий префикс и суффикс.

Текст по умолчанию не установлен.

Функции доступа:

wrapping : bool

Данное свойство указывает, изменяются ли значения счетчика по кругу.

Если свойство равно true то следующим за maximum() значением будет значение minimum() и наоборот. Перенос имеет смысл только в том случае, если значения minimum() и maximum() установлены.

    QSpinBox *spinBox = new QSpinBox(this);
    spinBox->setRange(0, 100);
    spinBox->setWrapping(true);
    sb->setValue(100);
    sb->stepBy(1);
    // значение равно 0

По умолчанию перенос отключен.

Функции доступа:

См. также QSpinBox::minimum() и QSpinBox::maximum().


Описание Функций-Членов

QAbstractSpinBox::QAbstractSpinBox ( QWidget * parent = 0 )

Создает абстрактный счетчик с родителем parent со значением свойств wrapping и alignment установленными в значения по умолчанию.

QAbstractSpinBox::~QAbstractSpinBox ()

Вызывается при разрушении QAbstractSpinBox.

void QAbstractSpinBox::clear ()   [virtual slot]

Очищает строку редактирования от текста, включая префикс и суффикс.

void QAbstractSpinBox::editingFinished ()   [signal]

Данный сигнал испускается при окончании редактирования. Это происоходит при потере счетчиком фокуса ввода и при нажатии клавиши Enter.

void QAbstractSpinBox::fixup ( QString & input ) const   [virtual]

Данная виртуальная функция вызывается QAbstractSpinBox, если введенный текст input не принимается QValidator::Acceptable при нажатии клавиши Return или при вызове interpretText(). Функция пытается изменить текст так, чтобы он был принят. Повторно реализуется в подклассах.

void QAbstractSpinBox::interpretText ()

Данная функция интерпертирует текст счетчика. Если со времени последней интерпретации текст изменился, испускаются сигналы.

QLineEdit * QAbstractSpinBox::lineEdit () const   [protected]

Данная функция возвращает указатель на редактор строки счетчика.

См. также setLineEdit().

void QAbstractSpinBox::selectAll ()   [slot]

Выделяет весь текст в счетчике, за исключением префикса и суффикса.

void QAbstractSpinBox::setLineEdit ( QLineEdit * lineEdit )   [protected]

Устанавливает в качестве редактора строки счетчика lineEdit вместо текущего виджета редактирования строки. lineEdit не может быть равным 0.

QAbstractSpinBox становится владельцем нового редактора строки

Если QLineEdit::validator() объекта lineEdit возвращает 0, то для редактора строки будет установлен внутренний контролер счетчика будет.

См. также lineEdit().

void QAbstractSpinBox::stepBy ( int steps )   [virtual]

Эта виртуальная функция вызывается при выполнении пользователем шага приращения значения. Параметр stepsуказывает сколько шагов приращения было совершено. Например, при нажатии Qt::Key_Down будет вызвано stepBy(-1), при нажатии Qt::Key_Prior вызывается stepBy(10).

Если Вы создаете подкласс QAbstractSpinBox, то должны заного реализовать данную функцию. Обратите внимание на то, что данная функция вызывается даже если результирующее значение выходит за границы, заданные минимальным и максимальным значениями. Обработка такой ситуации - задача данной функции.

void QAbstractSpinBox::stepDown ()   [slot]

Шаг вниз на одно приращение. Вызов данного слота аналогичен вызову stepBy(-1);

См. также stepBy() и stepUp().

StepEnabled QAbstractSpinBox::stepEnabled () const   [virtual protected]

Виртуальная функция определяет, доступно ли совершение шагов вверх и вниз в данное время.

Стрелка вверх не будет окрашена как недоступная, если (stepEnabled() & StepUpEnabled) != 0.

Реализация по умолчанию возвращает (StepUpEnabled| StepDownEnabled) если перенос включен. Иначе возвращает StepDownEnabled, если значение > minimum() в комбинации ИЛИ с StepUpEnabled, если значение < maximum().

Если Вы создаете подкласс QAbstractSpinBox, то Вы должны зановов реализовать данную функцию.

См. также QSpinBox::minimum(), QSpinBox::maximum() и wrapping().

void QAbstractSpinBox::stepUp ()   [slot]

Вызывает приращение значения вверх на один шаг приращения. Вызов данного слота аналогичен вызову stepBy(1);

См. также stepBy() и stepDown().

QValidator::State QAbstractSpinBox::validate ( QString & input, int & pos ) const   [virtual]

Данная виртуальная функция вызывается QAbstractSpinBox чтобы определить, является ли введенное значение input действительным. Параметр pos указывает позицию в строке. Заново реализуется в подклассах.


Copyright © 2005 Trolltech Trademarks
Qt 4.1.0
Hosted by uCoz