Страница 1 из 1

Скрыть тулбар.

Добавлено: Чт авг 15, 2019 10:37 am
SirWolf
Простой акшен для скрытия верхнего или нижнего тулбара. Цеплять на форму.

Код: Выделить всё

{@action
Id=A602C679-A37B-4B45-B03C-38664891E217
Target=form
OrigName=StartHideToolbar
Name=Скрыть тулбар.
Group=Интерфейс
UI=
<ui>
 <checkbox  name="HideBeginU" caption="Скрыть верхний тулбар при старте"/>
 <checkbox  name="HideBeginD" caption="Скрыть нижний тулбар при старте"/>
</ui>
Description=Скрывает верхний или нижний тулбары
@}

procedure StartHideToolbar(HideBeginU,HideBeginD:boolean);

begin
if  (HideBeginU = true) then  MainWindow.Toolbar.Visible := not HideBeginU;
if  (HideBeginD = true) then  MainWindow.StatusBar.Visible := not HideBeginD;
end;


Код: Выделить всё

{@action
Id=4BC5175C-FA7C-406B-A325-EE980EF71EC8
Target=main
OrigName=HideToolbar
Name=Скрыть тулбар.
Group=Интерфейс
UI=
<ui>
 <divider caption="Действие не имеет настроек"/>
</ui>
Description=Скрывает верхний тулбар при активной "простой форме".
@}

var OldMainWindow_pages_OnChange: TNotifyEvent;

function GetActiveForm:TDxForm;
begin
  result:=MainWindow.FormViews[MainWindow.Pages.ActivePageIndex].Form;
end;

procedure MainWindow_pages_OnChange(sender: Tobject);
begin
    if OldMainWindow_pages_OnChange<>nil then
    OldMainWindow_pages_OnChange(sender);
    MainWindow.Toolbar.Visible := (GetActiveForm.ViewType <> vtSimpleForm);
end;

procedure HideToolbar;
begin
  OldMainWindow_pages_OnChange:=MainWindow.pages.OnChange;
  MainWindow.pages.OnChange:=@MainWindow_pages_OnChange;
end;