如何可以让image控件中的图片向右靠。

解决方案 »

  1.   

    autosize属性设置为true就行了,image会自适应图片大小
      

  2.   

    变通一下,根据加载的图片宽度,动态改变image宽度
      

  3.   

    应该是改变Image控件的左边距,呵
      

  4.   

    改源码这个可行,但我不会。  
    我要表达的意思是:我的图片宽度是90像素  image的宽度是30像素。 如果不动的情况下,image显示得是前30像素的内容,image里有个居中属性,我设置后,可以居中显示30-60像素的内容。我现在想要image显示60-90像素的内容。 而不显示60像素以前的内容。 
    大家明白了吗?
      

  5.   

    image1.Canvas.CopyRect(Dest, Canvas, Source);
      

  6.   


    procedure TForm1.Button3Click(Sender: TObject);
    var
      sourbmp   :TBitMap;
      destbmp    :TBitMap;
      sourRect   :TRect;
      destRect   :TRect;
    begin
      sourbmp  :=TBitmap.Create;
      destbmp  :=TBitmap.Create;  sourbmp.LoadFromFile('D:\1.bmp');
      destRect := Rect(0,0,sourbmp.Width,sourbmp.Height);
      sourRect := Rect(200,0,sourbmp.Width,sourbmp.Height);
      destbmp.Width  := sourbmp.Width;
      destbmp.Height := sourbmp.Height;
      destbmp.PixelFormat := sourbmp.PixelFormat;
      Image1.Picture.Bitmap.Assign(sourbmp);
      destbmp.Canvas.CopyRect(destRect,sourbmp.Canvas,sourRect);
      Image2.Picture.Bitmap.Assign(Destbmp);
    end;Image1和image2重叠着放。改变200大小,比较傻的办法。
      

  7.   

    1.把图裁剪,很简单,用绘图就可以,下面还会显示像素值;
    2.把Image放在一个容器上面:如 Panel
    然后设置Image AutoSize为True;
       拖动Image 就可以了。 不过这个方法其实是让Image往右靠,而不是Image上面的图像。不知道这样可以接受不?
       动态设置的话,可以设置Image的Left值,这时候的值为相对Panel的,为-也OK.
      

  8.   

    1.可動態改態左邊距;
    2.不建議修改源碼,可直接用Canvas來重繪