码迷,mamicode.com
首页 > 其他好文 > 详细

cxgrid 就展开一行

时间:2020-01-20 09:31:56      阅读:65      评论:0      收藏:0      [点我收藏+]

标签:int   false   count   state   问题   就是   ide   dex   lse   

Cxgrid显示有关问题
www.MyException.Cn  网友分享于:2013-01-02  浏览:17次
Cxgrid显示问题

cxgrid中显示内置页面
点击选择下面+号  显示内置的信息 这个要在那个事件下写才能实现?? 也就是点击+号的时间是那个??
------解决方案--------------------
下列代码是仅让一行展开:


procedure TForm1.cxGrid1DBTableView1MouseDown(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

var

  AHitTest: TcxCustomGridHitTest;

  I: Integer;

begin

  AHitTest:=cxGrid1DBTableView1.ViewInfo.GetHitTest(X, Y);//取点击的位置

  if (AHitTest is TcxGridExpandButtonHitTest) and not TcxGridExpandButtonHitTest(AHitTest).GridRecord.IsData then//点击位置是"+"按钮和不在数据单元

    if TcxGridGroupRow(TcxGridExpandButtonHitTest(AHitTest).GridRecord).Expanded then//如果当前动作是展开

      with cxGrid1DBTableView1.ViewData do

        for I := RowCount - 1 downto 0 do //收拢其他被展开的项

          if (Rows[I] is TcxGridGroupRow) and (Rows[I] as TcxGridGroupRow).Expanded then

            if not (Rows[I] = TcxGridExpandButtonHitTest(AHitTest).GridRecord) then

              (Rows[I] as TcxGridGroupRow).Collapse(false);

end;

  

cxgrid 就展开一行

标签:int   false   count   state   问题   就是   ide   dex   lse   

原文地址:https://www.cnblogs.com/westsoft/p/12216343.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!