Флаги TScalingFlagФлаг
Таблица 8.17. Флаги TScalingFlag
Флаг | Значение |
sfLeft | Левая сторона элемента управления не может масштабироваться |
sfTop | Верх элемента управления не может масштабироваться |
sf Width | Ширина элемента управления не может масштабироваться |
sfHeight | Высота элемента управления не может масштабироваться |
sfFont | Шрифт элемента управления не может масштабироваться |
- Свойство ShowHint применяется для включения или выключения показа всплывающих подсказок при задержке указателя мыши над компонентом. Текст подсказки задается в свойстве Hint. Свойство ShowHint описано следующим образом:
property ShowHint: Boolean; - Свойство Text предназначено для задания или чтения строки текста, связанной с данным компонентом. Данное свойство описано так:
property Text: TCaption;
Это свойство применяется в компонентах типа TEdit и в компонентах-списках. - Свойство Tор применяется для задания или чтения значения, определяющего координату верхнего края компонента. Данное свойство описано следующим образом:
property Top: Integer; - Свойство Visible применяется для определения, будет ли виден компонент на форме во время выполнения программы. Оно описано так:
property Visible: Boolean;
Если свойство имеет значение true, то компонент будет виден, иначе — невидим.
- Свойство Width применяется для установки горизонтального размера компонента, а также для чтения текущего значения ширины компонента. Данное свойство имеет целый тип и описано следующим образом:
property Width: Integer;
Рассмотрим теперь свойства, характерные для класса TWidgetControl и его наследников.
- Свойство Bitmap служит для задания растрового изображения, которое отображается как фоновый рисунок элемента управления. Данное свойство в классе TWidgetControl описано следующим образом:
property Bitmap: TBitmap; - Свойство Brush предназначено для установки цвета и кисти для закраски фонового изображения элемента управления. Данное свойство описано так:
property Brush: TBrush; - Свойство ChlidHandle возвращает ссылку на элемент управления. Данная ссылка является дескриптором дочернего окна, который применяется, когда происходит вызов родительского окна. Свойство используется только для чтения и описано следующим образом:
property ChildHandle: QwidgetH; library; - Свойство ControlCount возвращает число дочерних элементов управления от данного. Оно описано так:
property ControlCount: Integer;
Это свойство применяется только для чтения. Значение, хранящееся в данном свойстве, всегда на единицу больше, чем самый последний индекс дочернего элемента (см. свойство Controls ниже), т. к. первый индекс всегда равен нулю. - Свойство Controls представляет собой массив, содержащий список всех дочерних элементов управления по отношению к данному элементу. Это свойство описывается следующим образом:
property Controls[Index: Integer]: TControl;Примечаниe
He путайте свойство Controls со свойством Components. Свойство Controls содержит список всех дочерних окон от данного, а свойство Components — список всех компонентов, владельцем которых этот компонент является.
Данное свойство применяется только для чтения. Для добавления или удаления дочерних элементов управления используйте соответствующие методы InsertControl и Remove Control.
- Свойство Handle обеспечивает доступ к дескриптору окна элемента управления. Описано следующим образом:
property Handle: QWidgetH read GetHandle; library;
Данное свойство применяется только для чтения - Свойство InputKeys определяет тип клавиш, которые могут применяться для ввода информации внутри данного элемента управления при получении им фокуса. Свойство описано следующим образом;
property InputKeys: TInputKeys;
Стоит сказать несколько слов о типе TInputKeys. Этот тип представляет собой перечисляемый тип, значения которого показаны в табл. 8.18.
Таблицa 8.18. Значения типа TInputKeys
Значение | Описание |
ikAll | Ввод любых символов клавиатуры |
ikArrows | Клавиши со стрелками (<влево>, <вправо>, <вверх>, <вниз>) |
ikChars | Любые нефункциональные клавиши без <Ctrl> и <Alt> |
ikReturns | Клавиша ввода (<Enter>) |
ikTabs | Клавиша табуляции (<Таb>) и комбинация клавиш обратной табуляции (<Shtft>+<Tab>) |
ikEdit | Клавиши редактирования (<Backspace>, <lnsert>, <Delete>) |
ikNav | Клавиши навигации по тексту (<вверх>, <вниз>, <влево>, <вправо>, <Home>, <End>, <PageUp>, <PageDown>) |
ikEsc | Клавиша <Esc> |
- Свойство Masked включает или выключает свойство Automask для отображения непрямоугольных окон. Описано следующим образом:
property Masked: Boolean;
Принимает значение True, если окно имеет непрямоугольную форму. - Свойство Palette хранит значение текущей палитры, которая используется для рисования данного элемента управления. Описано следующим образом:
property Palette: TWidgetPalette; - Свойство ParentWidget служит для ссылки на родительский элемент управления, т.е. на дескриптор окна родителя данного элемента управления. Описано следующим образом:
property ParentWidget: QWidgetH; - Свойство Style предназначено для задания стиля компонента. Описано так:
property Style: TWidgetStyle; - Свойство TabOrder применяется для задания последовательности перехода от одного компонента формы к другому при помощи клавиши <Таb>. Свойство описано следующим образом:
property TabOrder: TTabOrder;
Нумерация осуществляется, начиная с нуля. Если задать свойству TabOrder компонента значение -1, этот компонент не сможет получить фокус при помощи клавиши <Таb>. Предположим, что на форме расположены три кнопки: Button1, Button2 и Button3. Для того чтобы фокус между этими кнопками передавался следующим образом: сначала активна кнопка Button2, затем — Button1 и потом уже Button3, нужно установить свойство TabOrder для кнопки Button1 равным 1, для Button2 — 0, а для Button3 — 2. - Свойство TabStop применяется для указания возможности передачи фокуса на компонент при помощи клавиши <Таb>. Оно описывается следующим образом:
property TabStop: Boolean;
Если значение данного свойства равно true, то при помощи клавиши <Таb> можно передать фокус этому компоненту, в зависимости от его свойства TabOrder. Если значение свойства TabStop равно false, то независимо от свойства TabOrder фокус будет невозможно передать при помощи клавиши <Таb>.
Методы
Методы — это процедуры или функции, принадлежащие объекту. Методы определяют поведение объекта. Для вызова метода объекта нужно указать объект, с которым ассоциирован данный метод, затем, через точку, — название метода. Например:
Button1.Click
Вызывается метод нажатием (Click) кнопки (Button1).
Для создания метода его нужно сначала объявить внутри описания класса или компонента, содержащего данный метод. Например:
type TMyComponent = class(TObject)
. . .
procedure DoSomething; . . .
end;
Здесь, внутри описания нового компонента, мы объявляем метод DoSomething с помощью служебного слова procedure. После того как мы объявили новый метод, необходимо создать тело данного метода. Эта процедура может находиться где угодно внутри модуля, в котором был описан компонент. Например:
procedure TMyComponent.DoSomething; begin
// Здесь размещаем команды и операторы, которые должны выполняться
// при вызове метода DoSomething на выполнение end;
Заметим, что при создании процедуры DoSomething мы должны указывать его полное имя вместе с указанием имени компонента или класса
(procedure TMyComponent.DoSomething;).
Рассмотрим основные методы среды Kylix.
- Метод Add предназначен для добавления нового элемента в список типа TList, TStringList или TStrings. Если список не отсортирован, то новый элемент добавляется в самый конец списка. Если список отсортирован, новый элемент добавляется в позицию списка, определяемую сортировкой. Вызов настоящего метода увеличивает значение свойства count для этого списка. При выполнении данного метода может возникнуть исключение EListError в случае, когда список отсортирован, добавляемая строка уже присутствует в списке и для данного списка свойство
Duplicates установлено в dupError.