有一panel,在其上放一Image,怎么样才能让图像在panel中平铺满整个panel区域?

解决方案 »

  1.   

    设置Image的Align可以实现你要的效果么?
      

  2.   

    设置image的align:=alclient;
               stretch:= true;
    图像即可平铺整个pannel区域,窗体等也一样 ^_^
      

  3.   

    》设置image的align:=alclient;
    》           stretch:= true;
    》图像即可平铺整个pannel区域,窗体等也一样 ^_^
    icon格式的图像不行。Bmp,Jpeg的可以。
      

  4.   

    就将你的image的属性设置一下就可以
      

  5.   

    我要的不是拉伸平铺,是原样平铺,如image是20*20,panel是40*40,那panel中就应有4个image原图,4个原图拼在一起.
      

  6.   

    C++Builder代码:
    =========================     // Draw image
        if(FDrawStyle == dsCenter) // Center Draw
        {
          int FImageWidth = FBkgndImage->Width;
          int FImageHeight = FBkgndImage->Height;      this->Canvas->Draw((this->Width - 2*Offset - FImageWidth)/2  + Offset,
            (this->Height- 2*Offset - FImageHeight)/2 + Offset,FBkgndImage->Graphic);
        }
        else if(FDrawStyle == dsTile) // Tile draw
        {
          int FImageWidth = FBkgndImage->Width;
          int FImageHeight = FBkgndImage->Height;      int j = this->Width/FImageWidth + 1;
          int n = this->Height/FImageHeight + 1;      for(int i = 0; i < j; i++)
            for(int m = 0; m < n; m++)
              this->Canvas->Draw(Offset + i*FImageWidth,Offset + m*FImageHeight,FBkgndImage->Graphic);
        }
        else  // Stretch draw
        {
          this->Canvas->StretchDraw(TRect(Offset,Offset,this->Width-Offset,this->Height-Offset),FBkgndImage->Graphic);
        }
    ===================实际上TControlBar的源代码就有这段代码,而且是Delphi的,你不仔细查而已:)
      

  7.   

    其实就是用canvas往上画,panel中放一个imgage->align->alclient;
    放一个button,代码如下
    procedure TForm1.Button1Click(Sender: TObject);
    var
       x,y,w,h:longint;
       bitmap:tbitmap;
    begin
    bitmap:=tbitmap.Create;
    try
        bitmap.LoadFromFile('e:\bitmap1.bmp');//这是你的bmp文件
        with bitmap do
        begin
             w:=width;
             h:=height;
        end;
        y:=0;
        while y<height do
        begin
             x:=0;
             while x<width do
             begin
                   image1.Canvas.Draw(x,y,bitmap);
                   inc(x,w);
             end;
             inc(y,h);
        end;
    finally
       bitmap.Free;
    end;
    end;
      

  8.   

    也可在form上,总之要有canvas,道理一样的.
    国庆将至,终于可以修修了,爽阿.^_^.