Bringtofront - інтернет підручник c builder

Метод BringToFront дозволяє змінювати послідовність перекриття компонентів на формі і тим самим управляти видимістю компонентів.
Перекриваються компоненти на формі розміщуються поверх один одного в так званій Z-послідовності, що відповідає порядку розміщення компонентів в процесі проектування. Наприклад, якщо ви помістили в один і той же місце форми дві кнопки однакових розмірів, то видно буде тільки друга з розміщених кнопок, оскільки вона розташована в Z-послідовності вище. Застосування під час виконання додатка методу BringToFront до нижньої кнопці перемістить її наверх в Z-послідовності і вона стане видно користувачеві.
Це справедливо по відношенню до НЕ віконним об'єктів, таким, як кнопки, мітки, зображення і т.д. а також і до віконних компонентів, таким, як Memo. ComboBox і ін. Але все не віконні компоненти завжди розташовані в Z-послідовності нижче віконних і метод BringToFront не може змінити це правило. Наприклад, спроба перенести нагору методом BringToFront мітку, розміщену під віконним компонентом, ні до чого не приведе.

void __fastcall BringToFront (void);

Нехай ви хочете, щоб в якомусь місці форми розміщувалася кнопка, яка в залежності від поточного режиму роботи мала б два різних набору властивостей і виконувала б різні функції. Ви можете розмістити в потрібному місці дві кнопки один на одному (нехай вони мають імена Button1 і Button2), задати кожної потрібні властивості і для кожної описати відповідні обробники подій. Тоді для зміни цих кнопок ви в відповідних місцях коду програми пропишіть:

Користувач буде бачити то одну, то іншу з цих кнопок.

Нехай в додатку в одному і тому ж місці форми один на одному розташовані дві панелі: Panel1 і на ній Panel2, що містять якісь керуючі компоненти для різних режимів роботи. Panel2 розташована на Panel1, яка є, таким чином, її батьком. В обробник події форми OnCreate можна вставити наступне:

Panel2-> Parent = Form1;
Panel2-> BoundsRect = Panel1-> BoundsRect;
Panel1-> BringToFront ();

Перший оператор робить батьківським компонентом панелі Panel2 форму Form1. Другий оператор задає панелі Panel2 той же місце розташування і розміри, які має панель Panel1. Останнє необхідно, оскільки при проектуванні її координати відповідали координатного простору контейнера - клієнтської області панелі Panel1. А тепер її батько змінився на форму, і треба її розташувати в тому ж місці форми, в якому розташована Panel1. Третій оператор переміщує вгору форму Panel1.

Схожі статті