我有一个类
TBoxInfo = class(Tpanel)              
  public
    id: string;               
    rect: TRect;              
    ww: Ticon;
  end;
a:TBoxInfo;
用      a.ww := Ticon.Create;
        a.ww.LoadFromFile('f:\11.ico');
        Canvas.Draw(x,y, a.ww);
        a.ww.Free;
为什么画不出11.ico的图标?

解决方案 »

  1.   

    CNT_MaxCellW      = 3;       //最大格
      CNT_MaxCellH      = 3;
      CNT_BoxW          = 100;      //块宽
      CNT_BoxH          = 100; boxList: Tstrings;     //块列表procedure TForm1.AddBox();
    var
      bi                : TBoxInfo;
      ix, iy            : Integer;
    begin  for ix := 0 to CNT_MaxCellW do
        for iy := 0 to CNT_MaxCellH do
        begin
                  bi := TBoxInfo.Create(SELF);
            bi.Parent := self;
            bi.SetBounds(ix * CNT_Boxw, iy * CNT_Boxh, bi.rect.Left + CNT_BoxW - 20,
              bi.rect.Top + CNT_BoxH - 20);
            bi.OnMouseDown := Self.ShapeMouseDown;
            bi.OnMouseMove := Self.ShapeMouseMove;
            bi.OnMouseUp := Self.ShapeMouseUp;
            bi.Color := clMoneyGreen;
            bi.BorderWidth := 1;
            bi.Caption := IntToStr(boxList.Count);
            bi.Show;
            bi.id := IntToStr(boxList.Count);
            bi.rect.Left := ix * CNT_BoxW;
            bi.rect.Top := iy * CNT_BoxH;
            bi.rect.Right := bi.rect.Left + CNT_BoxW - 20;
            bi.rect.Bottom := bi.rect.Top + CNT_BoxH - 20;
            bi.Refresh;        boxList.AddObject(IntToStr(boxList.Count), TBoxInfo(bi));
            exit;
          end;
       end;
    这个过程画出的是一个方块,现在我想换成一个图标,为什么总不成功呢?