Панели (TPanel) Delphi

Давайте напишем пример, в котором будем программно менять внешний вид панели. Для этого создайте новое при­ложение и установите на форму два компонента TPanel с палитры компо­нентов Standard.

В этом примере не будут меняться имена панелей. Они останутся по умол­чанию Panel 1 и Рапе12. Так будет на­гляднее.

 

Единственное, что мы поменяем,— это свойства caption обеих панелей. У первой я написал Buttoni, а у вто­рой — Close.

 

Теперь создадим обработчик события onmousedown (срабатывает, когда нажа­ли кнопку мыши) для первой панели и в нем напишем следующий код:

 

procedure TFormi.PanelIMouseDown(Sender: TObj ect;

Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

Panel1.BevelOuter:=bvLowered;

end;

Одна строка кода меняет вид панели. Создадим еще обработчик события onmouseup (срабатывает, когда отпустили нажатую кнопку мыши) для первой па­нели. По этому событию меняется вид панели на исходный:

procedure TFormi.PanelIMouseUp(Sender: TObj ect;

Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

Panel1.BevelOuter:=bvRaised;

end;

Попробуйте запустить программу и нажать на первую панель. Когда вы нажи­маете кнопку мыши, панель изменит внешний вид на вогнутый. При отпускании мыши панель возвращает исходный вид. Таким образом, панель начинает работать как кнопка.

 

Раз так, давайте создадим экзотичную кнопку. Для второй панели изменим свойства:

  • BevelOuter на bvRaised;
  • BevelInner на bvLowered.

Теперь создадим обработчик события onmousedown для второй панели и в нем напишем следующее:

 

Procedure TForml.Panel2MouseDown(Sender: TObj ect;

Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin

Panel2.BevelOuter:=bvLowered;

Pane12.BevelInner:=bvRaised; end;

Здесь меняется внешний вид панели на вогнутый. Теперь создадим обработчик события onmouseup для второй панели. По этому событию мы меняем вид панели на исходный:

procedure TForml.Panel2MouseUp(Sender: TObj ect;

Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin

Panel2.BevelOuter:=bvRaised;

Panel2.BevelInner:=bvLowered;

Close; end;

 

 

 

dle

Помоги проекту! Расскажи друзьям об этом сайте: