最终想实现的效果如下:----------------------
| 年级 | 班级 | 人数 |
----------------------
|      |  1   |  30  |
|   1  |--------------
|      |  2   |  35  |
----------------------
|      |  1   |  30  |
|      |--------------
|      |  2   |  35  |
|   2  |--------------
|      |  3   |  30  |
|      |--------------
|      |  4   |  35  |
----------------------

解决方案 »

  1.   

    dbgrid可能不行吧,试试dgbrideh,或者其他控件也许可以
      

  2.   

    还是真的没有看到过这样的显示方式,MARK
      

  3.   

    在VB中见过好像是FlexDBGrid有此功能,你可以找一下类似的控件
      

  4.   

    我做过类似效果用html做,用webbrowser显示:)
      

  5.   

    这属于数据分形,或者可以使用数据立方体控件,DESCITION CUBE,或者使用EXCEL里也可以.前者DELPHI自带,不过效率很低
      

  6.   

    我是这样的思路 表的创建 在表里新添加一个“年纪重复”字段 年纪 班级 人数 年纪重复
    1 1 11 0
    1 2 22 1
    1 3 33 1
    1 4 44 1
    2 1 11 0
    2 2 22 1
    3 1 11 0
    3 2 22 1
    3 3 33 1这样
    procedure TForm1.DBGridEh1GetCellParams(Sender: TObject; Column: TColumnEh;
      AFont: TFont; var Background: TColor; State: TGridDrawState);
    begin
      if (DBGridEh1.DataSource.DataSet.FieldByName('年纪重复').AsInteger=1) and (Column.FieldName='年纪') then
      begin
        AFont.Color:=DBGridEh1.Color;
      end;
    end;(当然如果在数据录入的时候如何录入 '年纪重复' 的值 可能是个很大的麻烦 虽说楼主所要求的正解 也不妨参考一下)
      

  7.   

    用cxGrid的, 正符合你的要求. 在Demo就有这样的例子呀