Набор картинок (TlmageList) в Delphi

Категория: Учебники по Delphi » Быстрый старт в Delphi

Набор картинок (TlmageList) в DelphiНаборы картинок используются для удобного хранения изображений. Мы уже не раз использовали такие наборы (TlmageList) в примерах. Здесь мы рассмотрим только некоторые особенности их применения, которые могут понадобиться при разработке приложений. Никакие примеры в этом разделе приводиться не будут, потому что мы уже использовали основные функции. Теперь только рассмотрим небольшие пояснения.

 

В свойствах Height и width находится ширина и высота хранящихся картинок. Когда вы добавляете новую, то она обязательно приводится к указанным размерам.

Вы можете программно доставать любую картинку из массива с помощью ме­тода GetBitmap. У этого метода есть два параметра:

  • индекс картинки, которую надо получить;
  • объект типа TBitmap, куда запишется результирующая картинка.

Например, чтобы получить четвертую картинку из массива, нужно написать так:

 

var

bi tmap: TBi tmap ;

begin

ImageList1 .GetBitmap (3, bitmap);

end;

 

ВНИМАНИЕ. Обратите внимание, что для выборки четвертой картинки надо указать цифру 3, потому что картинки, как и большинство массивов, нумеруются начиная с 0.

 

Набор страниц (TPageControl) в Delphi

Категория: Учебники по Delphi » Быстрый старт в Delphi

Набор страниц (TPageControl) в DelphiВ предыдущем разделе мы познакомились с компонентом TTabControl. Он дос­таточно хорош, но работать с ним очень неудобно, потому что постоянно прихо­дится самому следить, какая сейчас выделена вкладка, и в зависимости от этого отображать нужные компоненты. Всех этих недостатков лишен компонент TPageControl, который также находится на вкладке Win32 палитры компонентов.

 

Компонент TPageControl обладает практически всеми свойствами TTabControl плюс несколько дополнительных. Давайте посмотрим на него в работе.

Создайте новое приложение и поместите на форму компонент TPageControl. В этот раз мы не станем менять его имя и оставим значение по умолчанию PageControll. Единственное, что желательно сделать, — растянуть его на всю форму.

 

Щелкните правой кнопкой мыши по компо­ненту, и перед вами откроется меню управления компонентом. В верхней части меню находятся 4 пункта, с помощью которых можно управлять страницами:

  • New Page — создать новую страницу (вкладку);
  • Next Page — перейти на следующую страни­цу (вкладку);
  • Previous Page— перейти на предыдущую страницу (вкладку);
  • Delete Page — удалить выделенную страницу (вкладку).

Создайте новую страницу. Теперь посмотрите в объектный инспектор. Обратите внимание, что сверху в ниспадающем списке сейчас показывается выделенный компонентTabsheet1 типа TTabsheet— это созданная нами

 

Набор вкладок (TTabControl) в Delphi

Категория: Учебники по Delphi » Быстрый старт в Delphi

Набор вкладок (TTabControl) в DelphiИногда на форме надо иметь возможность показывать несколько вкладок, на каждой из которых будут располагаться разные компоненты. Такое очень часто можно увидеть в окнах настройки программ, например, в MS Word. В зависимости от выбранной в данный момент вкладки в основном окне отображаются относя­щиеся к ней свойства.

 

В Delphi на вкладке Win32 палитры компонентов есть два компонента, позво­ляющие создавать подобные элементы управления. Сейчас мы рассмотрим первый из них — TTabControl.

 

Запустите Delphi и создайте новое приложение. Разместите на форме компонент TTabControl и растяните его на всю форму. Давайте сразу же изменим имя компо­нента (свойство Name) на OptionsTab.

 

Теперь пора создать сами вкладки. Для этого дважды щелкните по свойству Tabs, и перед вами появится знакомое окно текстового редактора. Мы уже много раз работали с таким окном в других компонентах, поэтому оно не должно вызвать проблем.

В этом окне введем четыре строки:

  • "Основные настройки";
  • "Параметры пользователя";
  • "Загрузка и восстановление";
  • "Настройки печати".

После нажатия кнопки ОК на компоненте должны появиться вкладки с введен­ными названиями

 

Многострочный текст (TStaticText) в Delphi

Категория: Учебники по Delphi » Быстрый старт в Delphi

Многострочный текст (TStaticText) в DelphiИногда возникает необходимость создать текст в нескольких строках. Для этого можно установить на форму в столбик несколько компонентов TLabel. Можно по­ступить лучше— использовать компонент TStaticText. Если установить его на форму и отключить свойство Autosize, установив его в false, то компонент не бу­дет автоматически принимать размеры введенного текста. Если введенный текст не вмещается, то он будет разбит на несколько строк.

По своим свойствам TStaticText — полная копия компонента TLabel. Разница только в возможности выводить многострочные поля текста.

 

Полоса разделения (TSplitter)

Категория: Учебники по Delphi » Быстрый старт в Delphi

Полоса разделения (TSplitter)Запустите проводник Windows Explorer. Посмотрите на его главное окно, кото­рое разбито на две части. Слева вы можете увидеть список дисков и папок, а справа находятся файлы из выбранной папки. Между двумя половинами окна находится полоска, которую можно двигать, увеличивая или уменьшая одну из половин окна. Вот именно такой эффект легко создать с помощью компонента TSplitter.

 

У TSplitter не так уж и много свойств, поэтому мы не будем заострять на нем внимание, а просто рассмотрим пример работы с этим компонентом.

 

Создайте новое приложение. Теперь установим на форму компонент панели (TPanel) и растянем его по верхнему краю формы (установите у него свойство Align в aiTop). В свойстве Caption напишем "Верхняя панель". Далее установим на форму TSplitter и у него тоже установим в свойстве Align значение aiTop.

 

Еще одну панель выровняем по левому краю. В свойстве caption напишите "Левая панель". Добавим еще один TSpiitter и тоже установим выравнивание по левому краю.

Установим еще одну панель с выравниванием по всей оставшейся площади формы (свойство Align должно быть alclient). Ну а в свойстве caption напишем "Клиентская панель".

 

С ПОМОЩЬЮ СВОЙСТВ Width И Height можно изменять высоту и ширину разделителя. Только если компонент растянут горизонтально

(В СВОЙСТВе Align НаХОДИТСЯ alTop или alBottom), то ширину изменять бесполезно, потому что компонент занимает всю доступную ширину. А вот с помощью высоты можно изменить толщину разделителя. То же самое при растягивании компо­нента вертикально— имеет смысл изменять только Width.

 

Если вы все сделали правильно, то у вас должно получиться что-то похожее на рис. 11.20. Здесь три па­нели и между ними разделители TSpiitter. Попробуйте запустить эту программу и дви­гать мышью разделители. Размеры панелей будут меняться автоматически, что очень удобно для большинства программ. И при этом мы не написали ни одной строки кода.