可堆叠面板Delphi组件

时间:2011-09-06 19:14:35

标签: delphi components delphi-2010

有没有人知道Delphi组件实现类似于jquery sortable的东西,但是对于桌面应用程序呢?

即。一个垂直控件,包含许多可以重新排序的面板,也可以用作其他组件的容器(特别是包含不同文本位的TMemos)。

感谢您提供任何信息,

Breandan。

4 个答案:

答案 0 :(得分:1)

虽然我是从代码而不是设计时间做的,但我会使用包含一些框架或面板的TScrollbox或TPanel,它们都是顶部对齐的。如果我想要框架的折叠/展开,我只需在框架中放置一个按钮,允许您将框架折叠到最小高度,例如折叠时为20像素,以及展开时更高的尺寸。

里面的帧可能真的是你想要的任何控制,甚至包含一些其他控件的面板。顶级控件可以在父面板或滚动框中重新排序。

答案 1 :(得分:0)

TMS具有可折叠/展开的TAdvPanelGroup。请参阅右下方的屏幕截图: http://www.tmssoftware.com/site/advpanel.asp

答案 2 :(得分:0)

只有一次运行,然后我从正在运行的应用程序中移动并调整它们的大小。

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

答案 3 :(得分:0)

我还没有找到一个标准控件来完成你想要的Delphi 2007,但我会提供一个类似于Warren建议的自定义解决方案。主要区别在于我会在TFrame中创建它,以便您可以更轻松地维护代码,从而允许您操纵控件及其相互之间的交互。您还可以在框架内创建方法以添加新面板(包含备忘录和要显示的文本),移动它们等等。

这是一项工作,但它也可以是一次很棒的学习经历。最好的部分是,一旦完成,您可以在任何形式或其他框架内的任何地方重用该框架。如果你做得对,它也可以毫无困难地工作。