怎么使得cxDBTreeList的节点内容可以多行显示

来源:互联网 发布:hello聊天软件下载 编辑:程序博客网 时间:2024/05/22 05:19
如何使得cxDBTreeList的节点内容可以多行显示
如何使得cxDBTreeList的节点内容可以多行显示
如下图


------解决方案--------------------------------------------------------
你要的功能不是多行显示而是多列显示吧,cxDBTreeList主要有以下三个关键属性

KeyFields: 子节点ID
  
DisplayFields:节点内容这里就是显示内容,记得可以在界面上直接新增的,应该是双击cxDBTreeList吧
  
ParentFields:父节点ID

------解决方案--------------------------------------------------------
cxDBTreeList中,要使得某列的文本能折行显示
第一、将该列的Properties设置为Memo;
第二、在Properties里的WordWrap设置为True。 
------解决方案--------------------------------------------------------

Delphi(Pascal) code

......var  Form1: TForm1;//本代码在Delphi7 + DevExpress.V28 下编译、运行通过。implementationuses Midaslib;//免发布Midas.dll(TClientDataSet使用需要)//ClientDataSet1中有ID(自增类型)、ptID(整型)、name(字符型)三个字段;//先想办法在ClientDataSet1中增加三笔记录://1,0, 中国软件研发联盟QQ群//2, 1, 广州佬抛砖引玉来了//3,2, 欢迎大家来群里交流交流//当然,你也可以使用你自己现成的其他数据库来校验下列代码。  //若有谬误处,请指正,谢。{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);var i:integer;begin  ClientDataSet1.LoadFromFile('.\tmp.cds');//加载数据库  DataSource1.DataSet:=ClientDataSet1;//连结数据源  cxDBTreeList1.DataController.DataSource:=DataSource1;//连接TreeList  cxDBTreeList1.Align:=alClient;//客满  cxDBTreeList1.OptionsView.Headers:=False;//隐藏表头  cxDBTreeList1.DataController.CreateAllItems;//建立数据列  cxDBTreeList1.DataController.KeyField:='id';//关联键字段  cxDBTreeList1.DataController.ParentField:='ptID';//宿主字段  cxDBTreeList1.Columns[2].PropertiesClass:=TcxMemoProperties;//设置为memo属性  cxDBTreeList1.Columns[2].Width:=120;//列宽120  cxDBTreeList1.OptionsView.ColumnAutoWidth:=False;//取消自动列宽  cxDBTreeList1.OptionsView.CellAutoHeight:=True;//行高自动适应  (cxDBTreeList1.Columns[2].Properties as TcxMemoProperties).WordWrap:=True;//折行显示  for i:=1 downto 0 do cxDBTreeList1.Columns[i].Visible:=false;//隐藏0、1列  cxDBTreeList1.FullExpand;//展开全部节点//  cxDBTreeList1.FullCollapse;//合拢全部节点end;procedure TForm1.cxCheckBox1Click(Sender: TObject);//折行显示控制begin  cxDBTreeList1.OptionsView.ColumnAutoWidth:=not cxCheckBox1.Checked;  (cxDBTreeList1.Columns[2].Properties as TcxMemoProperties).WordWrap:=cxCheckBox1.Checked;end;procedure TForm1.cxCheckBox2Click(Sender: TObject);//表头显示控制begin  cxDBTreeList1.OptionsView.Headers:=cxCheckBox2.Checked;end;......




0 0
原创粉丝点击