Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
27.03.2015
Размер:
379.39 Кб
Скачать

Значок на панели задач (компонент tTrayIcon)

Рассмотрим, как можно добавить на панель задач свой значок (т. е. значок для нашей программы расположится рядом с системными часами).

Сначала переносим на форму нашего приложения компонент TTrayIcon с вкладки Samples:

Этот компонент невизуальный, т. е. он не будет виден на этапе выполнения программы.

Далее разместите на форме еще два компонента - ImageList с вкладки Win32 и PopupMenu

с вкладки Standard. Наша форма будет вглядеть приблизительно так:

Теперь займемся установкой свойств. Сначала добавьте для компонента ImageList одно изображение. Для контекстного меню добавьте два пункта - с заголовками «Восстановить» и «Спрятать» соответственно (для этого надо сделать двойной щелчок на размещенном на нашей форме компоненте контекстного меню). Далее для формы и для компонента TrayIcon установите свойство PopupMenu в PopupMenu1 (именно такое имя получит наше контекстное меню по умолчанию). Кроме того для связывания компонента TrayIcon со списком изображений установите его свойство Icons в ImageList1. Для того, чтобы для нашего значка на панели задач появлялось контекстное меню, задайте его свойство PopupMenuOn в imRightClickUp (это означает, что оно будет появляться при щелчке правой кнопкой мыши). И, наконец, установите свойство Visible для компонента TrayIcon1 в true.

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

void __fastcall TForm1::N1Click(TObject *Sender)

{

// Восстановление формы.

Form1->Visible = true;

TrayIcon1->Restore();

}

void __fastcall TForm1::N2Click(TObject *Sender)

{

// Скрытие формы.

Form1->Visible = false;

}

Запускаем программу. После запуска мы увидите значок программы рядом с часами. При щелчке на нем правой кнопкой мыши появится контекстное меню:

Его пункты будут работать точно также, как и на форме.

Работаем со сплиттером

Сплиттер позволяет разделить пространство формы на несколько частей. Размеры этих частей можно менять, двигая сплиттер.

Для начала создадим окно, разделенное по горизонтали на две части одним сплиттером. В каждой части разместим по компоненту Memo.

Разместите на форме компонент Memo. Он расположен на вкладке Stanard Палитры Компонентов:

Установите его свойство Align в alLeft. Memo прилипнет к левой части формы.

Теперь разместите на форме сплиттер. Он расположен на вкладке Additional Палитры Компонентов:

Для него свойство Align тоже установите в alLeft (если оно само не установилось в это значение).

Разместите на форме еще один экземпляр Memo. Для него свойство Align в alClient.

Можно запускать программу. Она будет выглядеть приблизительно так:

Аналогично можно делить форму сплиттером и на большее число частей. Например, если нам нужна форма такого вида - одна часть сверху и две - снизу (слева и справа):

то вы должны разместить на форме первый компонент Memo и установить его свойство Align в alTop, потом разместить один сплиттер и для него установить свойство Align тоже в alTop, затем расположить второй Memo, для которого свойство Align устанавливается в alLeft. Осталось разместить еще один сплиттер - для него свойство Align устанавливается как и для предыдущего Memo в alLeft, и, наконец, для последнего, третьего Memo свойство Align устанавливается в alClient.

И для первого, и для второго вариантов нашей программы мы можем менять размеры частей нашего окна, двигая сплиттер.

У сплиттера существует несколько полезных свойств. Например, толщина сплиттера. Она задается либо через свойство Width, либо через свойство Height - в зависимости от того, имеем мы дело с горизонтальным или вертикальным сплиттером.