Читать книгу: «Программирование на Delphi 7», страница 4

Шрифт:

{!} Если у панели выключить видимость (Panel1.vsible:=false), то все компоненты, расположенные на ней, также станут невидимыми. При включении видимости (Panel1.vsible:=true) они вновь появятся на экране.


Если Вам нужна дополнительная информация по какому-либо компоненту, то выберите его на Палитре Компонент и нажмите клавишу F1 – появится Справочник с полным описанием всех свойств, событий и методов данного объекта.

ЛЕКЦИЯ № 6

1. ОСНОВНЫЕ КОМПОНЕНТЫ СТРАНИЦЫ «ADDITIONAL» (дополнительные)

Страница «Additional» служит основным дополнением к странице «Standard». В данной вкладке размещены компоненты, позволяющие создавать более красивый пользовательский интерфейс программы, а также некоторые системные компоненты.

Список компонент:

TBitBtn – кнопка, подобная TButton, но на ней можно разместить, помимо надписи, еще и картинку (glyph). TBitBtn имеет несколько предопределенных типов (bkClose, bkOK и др), при выборе которых кнопка принимает соответствующий вид и надпись.

Kind – выбор предопределенного рисунка и надписи на кнопке («No», «Ok», «Help» и др.)

Glyph – выбор собственной картинки для кнопки

LayOut – выбор типа взаимного расположения рисунка и текста на кнопке (рисунок слева – текст справа, рисунок сверху – текст снизу и др.)

TSpeedButton – так называемая «кнопка быстрого доступа». Компонент TSpeedButton может иметь и надпись, и рисунок, а также режим «втопленности» и прозрачности «flat», при котором кнопка становится видимой только в момент наведения на нее указателя мыши.

GroupIndex – задание условного номера (целого числа) для объединения компонент TSpeedButton в единую функциональную группу. Если свойство равно нулю, то кнопка считается независимой и не входящей в какую-либо группу

Down – если “True”, то кнопка оказывается визуально нажатой, т.е. «втопленной». Данный режим работает, если кнопка входит в какую-либо функциональную группу (определяемую свойством «GroupIndex»)

Flat – включает (если «True») «эффект дружеского приветствия» кнопки

Glyph – выбор собственной картинки для кнопки

Transparent – включает (если «True») «прозрачность» фона кнопки

TMaskEdit - аналог TEdit, но с возможностью форматированного ввода. Формат определяется в свойстве EditMask. В редакторе свойств для EditMask есть заготовки некоторых форматов: даты, валюты и т.п. Спец. символы для маски можно посмотреть в Helpe.

EditMask – значение шаблона (маски) для ввода данных (например, “!999;1;_” – для ввода целого числа из одного до трех цифр, “!#999.99;1;0” – для ввода вещественного числа типа «-123.45»)

EditText – значение введенных данных, приведенных к заданному шаблону (маске)

IsMasked – если “True”, до маска была заданна (свойство только для чтения)

{!!!} При вводе данных в компонент у него возникает событие «OnChange»

TStringGrid - служит для представления текстовых данных в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство Cells. Данный компонент является визуальным аналогом многомерного массива в языке Pascal

ColCount – количество колонок в таблице (отсчет с 1)

RowCount – количество строк в таблице (отсчет с 1)

FixedRows – количество титульных (зафиксированных ) верхних строк в таблице (отсчет с 1)

FixedCols – количество титульных (зафиксированных ) левых столбцов в таблице (отсчет с 1)

LeftCol – номер первого отображаемого столбца таблицы, не считая фиксированных (отсчет с 1)

TopRow – номер первой отображаемой строки таблицы, не считая фиксированных (отсчет с 1)

Col – номер столбца, на котором находится фокус ввода (где редактировали данные или щелкнули мышкой)

Row – номер строки, на которой находится фокус ввода (где редактировали данные или щелкнули мышкой)

Cells [столбец , строка] – обращение к ячейки таблицы с заданным столбцом и строкой. Значение ячеек таблицы – всегда текстовые (типа «string»)

Options / goEditing – если «True», то в таблицу можно вводить и редактировать данные, иначе только просмотр значений

k:=0;

For i:=0 to StringGrid1.ColCount-1 do

   For j:=0 to StringGrid1.RowCount-1 do begin

     k:=k+strtoint(StringGrid1.Cells[i,j]); StringGrid1.Cells[i,j]:=’Ok!’;

   End;

TImage - отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Picture – задает имя файла с рисунком

AutoSize – автоматическое изменение размера компонента под размер рисунка

Stretch – если “True”, то рисунок масштабируется к размерам компонента

Transparent – включает (если «True») «прозрачность» фона рисунка

Center – расположение рисунка по центру компонента (актуально для случая, когда рисунок меньше размера компонента)

TShape - служит для отображения простейших графических объектов на форме: окружность, квадрат и т.п.

Shape – тип фигуры

Pen – установка типа линии фигуры (цвета, формы, ширины и др.)

Brush – установка типа закраски фигуры (цвета, вида штриховки и др.)

TBevel – элемент для рельефного оформления интерфейса, создания вертикальных и горизонтальных линий

Shape – тип фигуры (четырехугольник, вертикальная линия, горизонтальная и др.)

Style – установка стиля рельефа (выгнутый, вогнутый)

TStaticText – позволяет создавать надпись, подобно компоненту Tlabel, но с красивым эффектом «втопленности». Данный компонент обычно применяется для отображения статического однострочного текста.

BorderStyle – определяет вид рамки у компонента

Caption – текст в компоненте

TCheckListBox – компонент, аналогичный TRadioGroup, используемый для объединения компонент TCheckBox в единую функциональную группу. Основные свойства компонента следующие:

Items [..] – в данном свойстве задается текст перечня элементов типа «TradioButton»

Checked [номер_строки_списка]– данное свойство показывает, установлена ли галочка у данного элемента списка или нет. Отсчет ведется с верха и нуля

Sorted – если равно “True”, то строки списка сортируются по алфавиту

Columns – задает количество столбцов в списке (по умолчанию один столбец)

with checklistbox1 do begin

for i:=0 to items.colcount-1 do

    if Checked[i]=true then showmessage(Items[i]);

end;

2. КОМПОНЕНТЫ СТРАНИЦЫ «DIALOGS»

На странице Dialogs представлены компоненты для вызова стандартных диалогов Windows. Объекты, представленные на данной странице, невидимы во время выполнения программы, вызов диалогов происходит только программно, например: if OpenDialog1 .Execute then Image1 .Picture.LoadFromFile(OpenDialog1 .FileName);

Диалоги Windows в порядке появления на странице Dialogs: OpenDialog - выбрать (открыть) файл; SaveDialog -сохранить файл; OpenPictureDialog - выбрать графический файл (с предварительным просмотром); SavePictureDialog - сохранить графический файл; FontDialog - настроить (установить) шрифт; ColorDialog -выбор цвета; PrintDialog –диалог печати данных; PrinterSetupDialog - настройка принтера; FindDialog - поиск строки текста; ReplaceDialog - поиск строки текстас заменой.

Рис. 1. Вкладка «Диалоги» Палитры Компонент

3. Пример вызова диалога приведен ниже.

procedure TForm1.Button1Click(Sender: TObject);

var F: Textfile;

begin

  OpenDialog1.Title := 'Удаление файла';

   if OpenDialog1.Execute then begin

        if FileExists(OpenDialog1.FileName) then

            if MessageDlg('Вы хотите удалить файл ' + ExtractFileName(OpenDialog1.FileName) + ' ?'),

              mtConfirmation, [mbYes, mbNo], 0) = mrYes then DeleteFile (OpenDialog1.FileName);

   end;

end;

4. Основные свойства диалогов:

InitialDir- начальная директория просмотра при открытии диалога

Title – заголовок диалога, например: ‘Delete File'

FileName – имя выбранного файла с полным маршрутом к нему, например: 'c:\lib\f1.dat'

DefaultExt – расширение по умолчанию, если не указано расширение, например: 'txt'

Filter – фильтры отображения файлов, например: ‘Text files (*.txt) | *.txt | All files (*.*) | *.*’

FilterIndex – номер фильтра отображения по умолчанию (отсчет с 1)

5. Основной метод всех диалогов, «EXECUTE», вызывает диалог на экран и возвращает «TRUE», если файл был выбран, или «FALSE» – если нет (выбрали кнопку «Отмена» или нажали «ESC»).

procedure TForm1.Button1Click(Sender: TObject);

var F: TextFile; S: string;

begin

  OpenDialog1.Title := 'Распечатка файла';

  if OpenDialog1.Execute then begin

    AssignFile(F, OpenDialog1.FileName);

    Reset(F); Readln(F, S); Edit1.Text := S;

    CloseFile(F);

  end;

end;

6. Пример использования диалога выбора шрифта:

if FontDialog1.Execute then Form1.Font := FontDialog1.Font;

7. Пример использования диалога выбора цвета:

if ColorDialog1.Execute then Form1.Font.Color := ColorDialog1.Color;

8. Пример использования диалога печати:

uses …, printers;

procedure TForm1.Button1Click (Sender: TObject);

begin

  showmessage(‘Печать формы на принтере’);

   if PrintDialog.Execute1 then begin

      with Printer do begin

          BeginDoc;

          form1.PaintTo(printer.Handle,0,0); NewPage;

         EndDoc;

      end;

    end;

end;

9. Пример использования диалога поиска текста в компоненте «RichEdit»:

Для кнопки запуска поиска нужно написать следующий обработчик:

procedure TForm1.Button1Click(Sender: TObject);

begin

  FindDialog1.Position:=Point(RichEdit1.Left + RichEdit1.Width div 2, RichEdit1.Top);

  FindDialog1.Execute;

end;

Для метода «OnFind» компонента «FindDialog» нужно написать следующий обработчик:

procedure TForm1.FindDialog1Find(Sender: TObject);

var k: LongInt;

begin

    k := Richedit1.FindText(FindDialog1.FindText, 0, Length(Text), [stMatchCase]);

    if k<>-1 then begin

      Richedit1.SetFocus; Richedit1.SelStart:=k; Richedit1.SelLength:=Length(FindDialog1.FindText);

  end;

end;

10. Пример печати текстовой информации из мемо-поля на принтере:

procedure TForm1.Button1Click(Sender: TObject);

var f: system.TextFile; i: longint;

begin

  assignPrn(f); Rewrite(f);

  writeln(f,’Print this text’);

  printer.canvas.font:=memo1.font;

  for i:=0 to memo1.lines.count-1 do

    Writeln(f, memo1.lines[i]);

  System.CloseFile(f);

end;

Покупайте книги и получайте бонусы в Литрес, Читай-городе и Буквоеде.

Участвовать в бонусной программе
Возрастное ограничение:
12+
Дата выхода на Литрес:
11 июня 2021
Дата написания:
2012
Объем:
84 стр. 57 иллюстраций
Правообладатель:
Автор
Формат скачивания:
Текст
Средний рейтинг 3,7 на основе 3 оценок
По подписке
Аудио
Средний рейтинг 4,7 на основе 427 оценок
По подписке
Текст PDF
Средний рейтинг 4,9 на основе 8 оценок
По подписке
Текст PDF
Средний рейтинг 5 на основе 6 оценок
Текст, доступен аудиоформат
Средний рейтинг 0 на основе 0 оценок
По подписке
Текст
Средний рейтинг 4,4 на основе 14 оценок
По подписке
Текст PDF
Средний рейтинг 3,9 на основе 13 оценок
По подписке
Текст PDF
Средний рейтинг 4,6 на основе 11 оценок
По подписке
Текст
Средний рейтинг 4,3 на основе 9 оценок
По подписке
Текст
Средний рейтинг 5 на основе 2 оценок
По подписке
Текст
Средний рейтинг 2,3 на основе 3 оценок
По подписке
Текст
Средний рейтинг 5 на основе 6 оценок
Текст
Средний рейтинг 5 на основе 2 оценок
Текст
Средний рейтинг 5 на основе 3 оценок