Difference between revisions of "ATTabs/ru"

From Free Pascal wiki
Jump to navigationJump to search
(Created page with "{{ATTabs}} = About = ''ATTabs'' is a tab-control component for Delphi and Lazarus. It's not replacement for standard tab control, but is alternative one, it has different AP...")
 
Line 1: Line 1:
 
{{ATTabs}}
 
{{ATTabs}}
  
= About =
+
= О компоненте =
  
''ATTabs'' is a tab-control component for Delphi and Lazarus. It's not replacement for standard tab control, but is alternative one, it has different API. It paints tabs OS-indenendant, using custom drawing on canvas.
+
''ATTabs'' является компонентом управления вкладками для Delphi и Lazarus. Он не заменяет стандартное управление вкладками, но является альтернативным, у него другой API. Он рисует вкладки OS-независимыми, используя пользовательское рисование на холсте.
  
Screenshot:
+
Скриншоты:
  
 
[[File:ATTabs_demo.png]]
 
[[File:ATTabs_demo.png]]
  
Author: Alexey Torgashin
+
Автор: Алексей Торгашин
  
= Help =
+
= Справка =
  
GitHub page has help files, which describe most of events/properties. It also shows sample code how to create tabs at runtime. https://github.com/Alexey-T/ATTabs/tree/master/wiki
+
Страница GitHub содержит файлы справки, которые описывают большинство событий/свойств. Она также показывает пример кода, как создавать вкладки во время выполнения. https://github.com/Alexey-T/ATTabs/tree/master/wiki
  
= How to use it like TPageControl=
+
= Как использовать его подобно TPageControl=
  
Make some new panel, which will be like TPageControl. Place ATTabs on it, make Align=alTop.
+
Создайте новую панель, которая будет похожа на TPageControl. Поместите ATTabs на нее, сделайте Align=alTop. Теперь вы создаете несколько форм или фреймов на этой панели (у них есть Parent:=Panel1; Align:=alClient;). Как переключать эти фреймыы при смене вкладок?
Now you create several Forms or Frames onto this panel (they have Parent:=Panel1; Align:=alClient;).
 
How to switch these frames on changing tabs?
 
  
* Add tabs OnChange event handler.
+
* Добавьте обработчик события OnChange для вкладки.  
* In this event handler: a) hide all frames, b) show frame, which is assigned to current TabIndex.
+
* В этом обработчике событий: а) скройте все фреймы, б) покажите фрейм, который назначен текущему TabIndex.
  
When you create a new tab, you can set its TabObject property. Set TabObject to a frame. When OnChange is called, get TabIndex, call GetTabData() for this index, and read TabObject for this tab. Show the frame, which is stored in this TabObject, hide all others.
+
Во время создания новой вкладки вы можете задать ее свойство TabObject. Задайте TabObject для фрейма. Когда вызывается OnChange, получите TabIndex, вызовите GetTabData() для этого индекса и прочитайте TabObject для этой вкладки. Покажите фрейм, который хранится в этом TabObject, скрыв все остальные.
  
<syntaxhighlight>
+
<syntaxhighlight lang=pascal>
 
   var
 
   var
 
     d: TATTabData;
 
     d: TATTabData;
Line 36: Line 34:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
= License =
+
= Лицензия =
  
License: MPL 2.0. Also you can use it under LGPL.
+
License: MPL 2.0. Также вы можете использовать его под LGPL.
  
= Download =
+
= Загрузить =
  
Latest version is always at https://github.com/Alexey-T/ATTabs
+
Последняя версия всегда доступна по адресу https://github.com/Alexey-T/ATTabs. Вы можете установить ее в IDE или даже не устанавливать (просто скопируйте файл attabs.pas в свой проект).
You can install it into IDE, or not do it (just copy file attabs.pas to your project).
 
  
= Requirements =
+
= Требования =
  
 
Lazarus: 1.6+.
 
Lazarus: 1.6+.
  
Tested on: Windows, Linux GTK2/QT, macOS (10.8).
+
Протестировано на: Windows, Linux GTK2/QT, macOS (10.8).
  
 
[[Category:Components]]
 
[[Category:Components]]

Revision as of 23:40, 26 October 2019

Deutsch (de) English (en) русский (ru)

О компоненте

ATTabs является компонентом управления вкладками для Delphi и Lazarus. Он не заменяет стандартное управление вкладками, но является альтернативным, у него другой API. Он рисует вкладки OS-независимыми, используя пользовательское рисование на холсте.

Скриншоты:

ATTabs demo.png

Автор: Алексей Торгашин

Справка

Страница GitHub содержит файлы справки, которые описывают большинство событий/свойств. Она также показывает пример кода, как создавать вкладки во время выполнения. https://github.com/Alexey-T/ATTabs/tree/master/wiki

Как использовать его подобно TPageControl

Создайте новую панель, которая будет похожа на TPageControl. Поместите ATTabs на нее, сделайте Align=alTop. Теперь вы создаете несколько форм или фреймов на этой панели (у них есть Parent:=Panel1; Align:=alClient;). Как переключать эти фреймыы при смене вкладок?

  • Добавьте обработчик события OnChange для вкладки.
  • В этом обработчике событий: а) скройте все фреймы, б) покажите фрейм, который назначен текущему TabIndex.

Во время создания новой вкладки вы можете задать ее свойство TabObject. Задайте TabObject для фрейма. Когда вызывается OnChange, получите TabIndex, вызовите GetTabData() для этого индекса и прочитайте TabObject для этой вкладки. Покажите фрейм, который хранится в этом TabObject, скрыв все остальные.

  var
    d: TATTabData;
  begin
    d:= t.GetTabData(t.TabIndex);
    if Assigned(d) then
      (d.TabObject as TMyFrame).Show;
  end;

Лицензия

License: MPL 2.0. Также вы можете использовать его под LGPL.

Загрузить

Последняя версия всегда доступна по адресу https://github.com/Alexey-T/ATTabs. Вы можете установить ее в IDE или даже не устанавливать (просто скопируйте файл attabs.pas в свой проект).

Требования

Lazarus: 1.6+.

Протестировано на: Windows, Linux GTK2/QT, macOS (10.8).