Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
ImageViewer BitmapScale Hk.
#1
Merhaba;

ImageViewer nesnesinin BitmapScale ile görüntüyü uzaklaştırıp yakınlaştıryorum bu işlemi yapmadan önce Rectangle  ile seçim yaptığımda doğru yeri alabiliyorken uzaklaştırıp yakınlaştırınca doğru yeri alamıyorum.  Resim boyutu değiştiğinde doğru alanı nasıl seçebilirim.

Forma bir adet ImageViewer, TrackBar1, Rectangle ekliyorum.

 private
  Selecting: Boolean;

procedure TForm1.ImageViewerMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Single);
begin
      Selecting := true;
      Rectangle.Position.X := X;
      Rectangle.Position.Y := Y;
      Rectangle.Width := 0;
      Rectangle.Height := 0;
end;

procedure TForm1.ImageViewerMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Single);
begin
  if Selecting then
  begin
    Rectangle.Width := X - Rectangle.Position.X;
    Rectangle.Height := Y - Rectangle.Position.Y;
  end;
end;


procedure TForm1.ImageViewerMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Single);
begin
  if Selecting then
  begin
    Selecting := False;
    Rectangle.Width := X - Rectangle.Position.X;
    Rectangle.Height := Y - Rectangle.Position.Y;
    ImageViewer.RealignContent;
  end;
end;


procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  ImageViewer.BitmapScale := TrackBar1.Value / 100;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Memo1.Lines.Add( CurrToStr(Round(Rectangle.Position.X)* TrackBar1.Value / 100));
Memo1.Lines.Add( CurrToStr(Round(Rectangle.Position.Y)* TrackBar1.Value / 100));
Memo1.Lines.Add( CurrToStr(Round(Rectangle.Width)* TrackBar1.Value / 100));
Memo1.Lines.Add( CurrToStr(Round(Rectangle.Height)* TrackBar1.Value / 100));
end;

2aG2nd.gif

http://s3.dosya.tc/server17/ezxe6h/Bitmap.rar.html Örnek kodlar
Cevapla


Bu Konudaki Yorumlar
ImageViewer BitmapScale Hk. - Yazar: pro_imaj - 17-10-2018, Saat: 14:06
ImageViewer BitmapScale Hk. - Yazar: ssahinoglu - 17-10-2018, Saat: 23:20
ImageViewer BitmapScale Hk. - Yazar: SimaWB - 18-10-2018, Saat: 09:26
Cvp: ImageViewer BitmapScale Hk. - Yazar: pro_imaj - 18-10-2018, Saat: 10:52
ImageViewer BitmapScale Hk. - Yazar: SimaWB - 18-10-2018, Saat: 11:10



Konuyu Okuyanlar: 1 Ziyaretçi