воскресенье, 27 января 2013 г.

Работа с Layout компонентами в Jdeveloper 11.1.1.6.0 для компоновки объектов страницы

     Здравствуйте! После создания простейшего приложения ADF в Jdeveloper появляется сложность в удобном расположении компонентов на странице.  Для этого в Oracle ADF используются компоненты компоновки. В этой статье  я  хочу описать эти компоненты.
     Если раскрыть вкладку в окне Component Pallete->Layout мы увидим следующие  компоненты:

      Все эти компоненты имеют следующие одинаковые свойства:

  • PartialTrigger- id компонента от которого зависит обновление этой области;
  • Вкладкой Style and theme можно установить высоту,ширину,шрифт  компонента;
  • Binding - привязывание компонента к переменной в Java  классе, для программного управления компонентой;
  • AttributeChangeListener-привязывание компонента к методу в Java  классе, который будет вызываться  при каком либо изменении компонента;
  • Visible - Видимость компонента;    
      Рассмотрим  основные компоненты.
Decorative Box 
       Decorative Box имеет 2 фасетки(facet):top,center.
        Основные свойства:

  • TopHeight- Высота фасетки top;
  • DimensionsForm- размер формы(parent,children)
      Document
        Document создает стандартные элементы  HTML страницы: <html>, <body>, и <head>
Panel Tabbed и Panel Accordion
        Эти два компонента  предназначены для отображения данных и в каждом из них можно добавлять вкладки для новых данных.  Рассмотрим основные свойства компонента  Panel Tabbed :
  • Position(both,above,below) -Расположение названия вкладки;
  • ChildCreation( immediate, lazy, lazyUncached) - свойства создания вкладки(постоянно, при первом открытии, создание при открытии и удаление при закрытии) 

         Вкладки Panel Tabbed имеют свои свойства:
  • Text - название вкладки;
  • Disclosed (true,false) - та вкладка  которая  имеет  свойство true, будет активна при запуске страницы;
  • StretchChildren- Растягивание компонентов внутри 

Panel Border Layout
        Panel Border Layout имеет 12 фасеток для компоновки компонентов на странице :top, bottom, left, right, start,end,innertop, innerbottom, innerleft, innerright, innerstart and innerend. Такое большое количество фасеток представляет разработчику больше возможностей  по расположению компонент на странице.
Panel Box
        Panel Box используется для размещения вспомогательной информации на странице, компенсируется определенным цветом.
 Panel Collection
         Panel Collection, объединяет в коллекцию компоненты, таких как Table, TreeTable и Tree.В этот компонент можно так же добавлять меню и панель инструментов. Снизу находится строка состояния.
Panel Group Layout
      Panel Group Layout используется для группировки компонент.Группировка может быть горизонтальной и вертикальной(свойство Layout). Так же при помощи свойств можно выравнивать компоненты по вертикали(Valign) и по горизонтали(Halign)

Panel Header 
       Panel Header используется для компоновки объектов в верхней части страницы. Для этого Panel Header имеет 5 фасеток: context, help, info, legend, menubar, toolbar.
Panel Splitter
      Panel Splitter служит для разделения области на две части.Область может быть разделена как вертикально, так и  горизонтально(свойство Orientation)
Panel Stretch Layout
      Panel Stretch Layout  разделяет область страницы  4мя фасетками :  top, bottom, start, end. Компоненты добавленные в эти фасетки  растягиваются на всю ее ширину.

Panel Window
       Panel Window  используется для размещения  информации во всплывающем окне.    

Separator
       Separator  разделяет страницу горизонтальной линией.

Show Detail Header
    Show Detail Header так же как и Panel Header используется для компоновки объектов в верхней части страницы, только в добавок еще может сворачиваться и разворачиваться.
Spacer
  Spacer  служит для разделения компонент между собой и имеет для этого два свойства:Height(Ширина) и Width(Высота)