各位朋友,我有个问题想请教一下!
我在数据库里面,有个判断男女的字段,如果是男人,显示一个男性的图标,如果是女人,显示女性的图标,我想动态的生成image控件的方法现实,但是如果有200人,就要用200个image控件,请问不知道还有没有好的方法?

解决方案 »

  1.   

    procedure TFrm.DBGrid1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    begin
        x:=(Rect.Right-Rect.Left-Image1.Width) Div 2;
        y:=(Rect.Bottom-Rect.Top-Image1.Height) Div 2;
        if Column.Field.DisplayText='N' then
          DBGrid1.Canvas.Draw(Rect.Left+x,Rect.Top+y,Image1.Picture.Bitmap)
        else
          DBGrid1.Canvas.Draw(Rect.Left+x,Rect.Top+y,Image2.Picture.Bitmap);
      end;
    end;
      

  2.   

    procedure TFrm_MFind.DBGrid1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    var x,y:integer;
      

  3.   

    不是在dbgrid里面显示!是在一个空白的地方显示,不管这个空白的地方用什么父容器,只要能上下滚动就可以了!
      

  4.   

    >>,但是如果有200人,就要用200个image控件
    用兩個就可!!!
      

  5.   

    本来也没那么麻烦,合适的时候画上合适的东西就行了,就不存在什么这控件那控件的问题要找这么个控件的话,ListView是最接近的了