Стекируемая панель Delphi Component - PullRequest
3 голосов
/ 06 сентября 2011

Кто-нибудь знает о компоненте Delphi, который реализует нечто похожее на то, что делает jquery sortable, но для настольного приложения?

, то есть вертикальный элемент управления, который содержит несколько панелей, которые можно переупорядочить, а также использовать какконтейнеры для других компонентов (в частности, TMemos, содержащих разные биты текста).

Спасибо за любую информацию,

Breandan.

Ответы [ 4 ]

1 голос
/ 07 сентября 2011

Хотя я делаю это из кода, а не из времени разработки, для этого я бы использовал TScrollbox или TPanel, содержащий несколько фреймов или панелей, которые выровнены по верху.Если я хочу свернуть / развернуть для фреймов, я просто помещаю в фрейм кнопку, которая позволяет сворачивать фрейм до минимальной высоты, например, 20 пикселей при свертывании и чего-то более высокого при расширении.рамки внутри могут быть любым элементом управления, который вы хотите, даже панели, содержащие несколько других элементов управления.Элементы управления верхнего уровня можно переупорядочить на родительской панели или в полосе прокрутки.

0 голосов
/ 07 сентября 2011

Я не нашел стандартного элемента управления, который делает то, что вы хотите в Delphi 2007, но я бы предложил специальное решение, подобное предложенному Уорреном.Основное отличие состоит в том, что я создал бы его в TFrame, чтобы вам было проще поддерживать код, который позволяет вам манипулировать элементами управления и их взаимодействием друг с другом.Вы также можете создавать методы в рамке для добавления новых панелей (с заметками и отображаемым текстом), перемещения их и т. Д.

Это немного работы, но также может быть отличным опытом обучения.Самое приятное то, что когда вы закончите, вы можете повторно использовать этот фрейм в любом месте в любой форме или в другом фрейме.Если вы все сделаете правильно, это будет работать без проблем.

0 голосов
/ 06 сентября 2011

Только один прогон, затем я перемещаю и изменяю их размер из запущенного приложения.

enter image description here enter image description here enter image description here

Вот dfm:

object Form2: TForm2
  Left = 0
  Top = 0
  Caption = 'Form2'
  ClientHeight = 337
  ClientWidth = 635
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  PixelsPerInch = 96
  TextHeight = 13
  object clbr1: TCoolBar
    Left = 0
    Top = 0
    Width = 635
    Height = 313
    Bands = <
      item
        Control = gb1
        ImageIndex = -1
        MinHeight = 123
        Width = 629
      end
      item
        Control = pnl1
        ImageIndex = -1
        MinHeight = 112
        Width = 629
      end>
    object gb1: TGroupBox
      Left = 11
      Top = 0
      Width = 620
      Height = 123
      Caption = 'gb1'
      TabOrder = 0
      object lbledt1: TLabeledEdit
        Left = 112
        Top = 40
        Width = 121
        Height = 21
        EditLabel.Width = 32
        EditLabel.Height = 13
        EditLabel.Caption = 'lbledt1'
        TabOrder = 0
      end
    end
    object pnl1: TPanel
      Left = 11
      Top = 125
      Width = 620
      Height = 112
      Caption = 'pnl1'
      TabOrder = 1
      object rg1: TRadioGroup
        Left = 128
        Top = 4
        Width = 185
        Height = 105
        Caption = 'rg1'
        Items.Strings = (
          'dsfsdf'
          'sdfsdfsd')
        TabOrder = 0
      end
    end
  end
end
0 голосов
/ 06 сентября 2011

TMS Имеет TAdvPanelGroup, которую можно свернуть / развернуть. Смотрите скриншот в правом нижнем углу: http://www.tmssoftware.com/site/advpanel.asp

...