КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Список строкСписок строк (класс TStrings, описанный в модуле Classes) полностью соответствует своему названию и предназначен для: О хранения строк; О обращения к списку строк как к массиву и получения строки по ее номеру (индексация начинается с нуля); О поиска строк; О добавления или удаления строк в конкретные места списка.
Clear Очистка списка Equals Сравнение списков Exchenge Перестановка местами Move Перемещение IndexOf поиск вхождения строки Savetofile сохранить список вфайле Loadfromfile чтение списка из файла
Компонент Текстовая область (ТМето) Обойтись простым текстовым полем удается не всегда. Если пользователь должен ввести большой объем информации (например, полный почтовый адрес или произвольный комментарий), ему может понадобиться несколько строк текста. В таком случае следует использовать компонент ТМето. При вводе текста для перехода на новую строку (к новому абзацу) обычно используется клавиша ENTER. Однако в диалоговых окнах Windows эта клавиша часто применяется для завершения ввода. Способ использования клавиши ENTER определяется значением свойства WantReturns. Если оно имеет значение True, то клавиша ENTER позволяет переходить к новой строке внутри текстовой области, в противном случае она служит для завершения ввода и перехода к следующему элементу управления, а для перехода к новой строке применяется комбинация клавиш CTRL+ENTER. Главное свойство данного компонента — Lines (Строки), имеющее тип TStrings. В нем хранится список строк, введенных пользователем. Эти строки можно обрабатывать всеми методами, доступными в классе TStrings, например сохранять в файле: Memol.Lines. SaveToFilef 'C:\Merrio.TXT1 ) ; Наличие у текстовой области полос прокрутки задается в свойстве ScrollBars. Selstart первый выделенный символ Sellength число выделенных символоа Seltext выделенный текст Selectall выделить весь текст Clearselection удалить выделение Clear очистить текстовое поле Undo отмена последнего изменения Clearundo очистить букфер хранящий историю изменений Copytoclipboard копировать в буфер обмена Cuttoclipboard вырезать текста Pastefromclipboard вставка текста из буфера
Компонент Флажок(TCheckBox) Данный компонент используется для фиксации включенного или выключенного состояния (одного из двух). Главное св-во Checked true если включен false сброшен
Определить текущее состояние или задать новое из числа доступных можно, проверив или изменив свойство State . Чтобы реагировать на изменение состояния флажка, надо создать обработчик события OnCLkk(При щелчке).
procedure TMyForm.CheckBoxlClickfSender: TObject); begin caseCheckBoxl.State of cbUnchecked: Labell-Caption := 'выключено'; cbGrayed : Labell.Caption := 'затемнено'; cbChecked : Labell.Caption := 'включено'; end end;
Компонент Переключатель(TRadioButton) В отличие от флажка, переключатель предназначен для выбора одного значения из ряда возможных. Переключатели всегда используются группами. Когда пользователь выбирает один из них, то выделение с текущего переключателя снимается. Таким образом, в группе выделен всегда ровно один переключатель.
Свойство Alignment определяет положение подписи справа или слева от переключателя, а свойство Checked — состояние объекта (True, если переключатель включен).
Если требуется отслеживать состояние переключателей динамически, надо создать обработчик события OnClick для каждого из них. О новом статусе переключателя можно сообщить, например, с помощью надписи Labell.
procedure TMyForm.RadioButtonlClicklSender: TObject]; begin if RadioButtonl.Checked then Labell.Caption := 'Включен первый1 end; procedureTMyForm.RadioButton2Click(Sender: TObject); Begin if RadioButton2.Checked thenLabell.Caption := 'Включен второй' end;
КомпонентГруппа переключателей (TRadioGroup) Если в программе требуется использовать несколько групп переключателей (например, одну для указания пола человека, а другую для выбора возрастной категории), можно применить один из двух подходов. Первый состоит в выделении для каждой группы специального объекта (панели), чтобы система Delphi могла понять, как объединяются переключатели. Второй подход состоит в использо- вании компонента TRadioGroup, который объединяет свойства и методы, обеспечивающие поддержку работы группы переключателей. Items названия переключателей Caption заголовокгруппы Columns число столбцов Свойство Itemlndex (исходное значение -1) содержит номер выделенного переключателя (число -1 показывает, что ни один переключатель не выбран). Значение этого свойства изменяется автоматически, когда пользователь выбирает один из переключателей группы. Разрешается менять его и программно при занесении нового значения в свойство Itemlndex изменится и текущий выбранный переключатель на форме.
Динамически реагировать на выбор нового переключателя в группе можно с помощью обработчика события OnClick. Например, чтобы отображать с помощью надписи Labell название текущего переключателя, надо обратиться к свойству Items (список строк) и выделить тот элемент, номер которого записан в свойстве Itemlndex. Предварительно следует проверить, имеется ли вообще выделенный переключатель (не равно ли значение свойства Itemlndex -1), или выбрать один из переключателей на этапе проектирования (например, присвоив свойству Itemlndex значение 0).
procedure TMyForm.RadioGrouplClickfSender: TObject]; begin if RadioGroupl.Itemlndex > -1 then Labell.Caption :- 'Выбран ' + RadioGroupl.Items[ RadioGroupl.Itemlndex ] end;
Компонент Список (TListBox) Компонент Список (TListBox) очень часто применяется в программах для Windows. Он позволяет выбрать одну или несколько строк в списке. Первоначально компонент TListBox, размещенный на форме, изображается в виде пустого квадрата. Его размеры можно настроить протягиванием мыши. Columns число столбцов Style тип списка Multiselect Выбор нескольких элементов списка Selected[index] если true элемент выделен Itemindex Номер единственного выделенного элемента Add добовить элемент Clearочистить DeleteString(index)удалить элемент с номером index
Еще один полезный метод, который часто используется для вызова контекстного меню конкретного элемента списка, называется ItemAtPos. Онпереводит координату точки внутри списка в номер элемента, в рамках которого лежит эта точка. Его удобнее всего использовать в обработчике щелчка (отпускания) кнопки мыши для объекта ListBox.
procedure TMyForm.ListBoxlMouseUp (Sender: TObject; Button: TMouseButCon; Shift: TShiftState; X, Y: Integer); var Point: TPoint; Index: Integer; begin Point.X := X; Point.Y := Y; Index := ListBoxl .ItemAtPos (Point, True) ; End; В переменную Index запишется номер элемента, на область которого внутри списка пришелся щелчок мыши.
Компонент Поле со списком (TComboBox) Этот компонент представляет собой вариант списка с присоединенным дополнительным полем, в котором отображается выбранный элемент списка. Это же поле может использоваться для ввода новых элементов или для быстрого поиска элемента по начальным символам. Если на экране отображается только присоединенное поле (раскрывающийся список), то для раскрытия списка можно использовать клавиатурную комбинацию ALT+BHH3. Style тип поля со списком Dropdouncount Мах число отображаемых элементов Itemindex Текущая выбранная строка
|