带有TcxTreeList的TcxPopUpEdit

时间:2014-07-18 05:46:35

标签: delphi user-interface delphi-xe2 treelist

我正在开展一个项目,我必须使用TcxPopUpEdit控制来显示PopupList控件中每个节点的TcxTreeList

我在Delphi中有点新鲜。

现在,我可以在每个项目的TcxTreeList中显示弹出编辑控件。

现在的问题是,我想从popupedit获取所选的Treelist控件 并且还希望在节点选择的PopupEdit中为每个PopupEdit控件显示Treelist控件中的一些文本。

有人可以帮助我根据需要得到结果吗?

可以欣赏任何类型的帮助。

先谢谢你。

1 个答案:

答案 0 :(得分:1)

快速解决方案是在PropertiesCloseUp中设置代码。

type
  TForm1 = class(TForm)
    cxTreeList1: TcxTreeList;
    cxTreeList1Column1: TcxTreeListColumn;
    cxTreeList1Column2: TcxTreeListColumn;
    cxPopupEdit1: TcxPopupEdit;
    procedure cxPopupEdit1PropertiesCloseUp(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.cxPopupEdit1PropertiesCloseUp(Sender: TObject);
begin
  if self.cxTreeList1.SelectionCount>0 then
  begin
    self.cxPopupEdit1.Text:= self.cxTreeList1.Selections[0].Values[cxTreeList1Column2.ItemIndex];
  end;
end;

对于Listbox,作为属性中的popupcontrol' PopupEdit' TcxTreelistColumn:

procedure TForm1.cxTreeList1Column2PropertiesCloseUp(Sender: TObject);
begin
  if self.cxListBox1.ItemIndex<>-1 then
  begin
    self.cxTreeList1.FocusedNode.Texts[self.cxTreeList1.FocusedColumn.ItemIndex]:=  self.cxListBox1.Items.Strings[self.cxListBox1.ItemIndex];
  end;
end;