1. °³¹ß/½ÇÇà Ç÷§Æû
(1) OS : win7
(2) °³¹ßÅø : delphi7
(3) »ç¿ë Database :
2. °³¹ß ÁßÀÎ ÇÁ·Î±×·¥ : À̹ÌÁöºä¾î
3. Áú¹® ³»¿ë
¿©±âÀú±â °Ë»öÇؼ ¾Æ·¡Ã³·³ À̸®Àú¸® Çϳª¾¿ ÁÖ¼® ÇØ°¡¸é¼ ÀÛ¾÷À» ÁøÇàÇغ¸¾ú½À´Ï´Ù.
Á¦°¡ ÇÏ°íÀÚ ÇÏ´Â ±ÛÀÌ ÀÖ¾ú´Âµ¥ ÇØ°á Çϼ̴ٴµ¥ ±× ÀÌÈÄ ±ÛÀÌ ¾ø¾î¼
Á¶¾ðÀ» ¾ò°íÀÚ ±ÛÀ» ³²±è´Ï´Ù.
À̹ÌÁö¸¦ º¸¿©Áִ°ÍÀ» ÇÏ´Ùº¸´Ï TImgView32 ÄÄÆ÷³ÍÆ®°¡ Á¸Àç ÇÏ¿© »ç¿ëÇغ¸°Ô µÇ¾ú½À´Ï´Ù.
Áú¹®. ȸ麸´Ù Å« À̹ÌÁö Àΰæ¿ì ¸¶¿ì½º¸¦ Ŭ¸¯Çؼ À̹ÌÁö¸¦ À̵¿ÇÏ°íÀÚ ÇÕ´Ï´Ù.
¿¹¸¦µé¾î ȸé»ó ¿À¸¥ÂÊ ³¡¿¡ ¸¶¿ì½º Ŭ¸¯ÇÏ¿© ¿ÞÂÊÀ¸·Î µå·¹±× Çϸé À̹ÌÁö°¡ µû¶ó¿À´Â°ÍÀÌÁö¿ä
À̸®Àú¸® Çغ¸´Âµ¥ ¿òÁ÷À̴°Š°°´Ù ½Í¾ú´õ´Ï ±ô¹ÚÀÓÀÌ °è¼Ó ¹ß»ýÀÌ µÇ°í
µÇ¾ú´Ù ½Í¾ú´õ´Ï À§Ä¡°¡ ¸ÂÁö¸¦ ¾Ê¾Æ¼ ÀÌ·¸°Ô ±ÛÀ» ³²°Ü º¾´Ï´Ù.
procedure TForm1.ImgVwMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer; Layer: TCustomLayer);
Begin
ReleaseCapture;
ImgVwD.Perform(WM_SYSCOMMAND, $F012, SC_MOVE);
ImgVwD.ScrollToCenter(X, Y);
ImgVwD.ScrollToCenter(Trunc((X - ImgVwD.OffsetHorz) / ImgVwD.Scale), Trunc((Y - ImgVwD.OffsetVert) / ImgVwD.Scale));
ImgVwD.ScrollToCenter(Trunc(ImgVwD.OffsetHorz - X), Trunc(ImgVwD.OffsetVert - Y));
ImgVwD.ScrollToCenter(Trunc(X - ImgVwD.OffsetHorz), Trunc(Y - ImgVwD.OffsetVert));
ImgVwD.ScrollToCenter(Trunc((ImgVwD.Bitmap.Width -(X - ImgVwD.OffsetHorz))), Trunc(ImgVwD.Bitmap.Height - (Y - ImgVwD.OffsetVert)));
ImgVwD.ScrollToCenter(Trunc((X - ImgVwD.OffsetHorz) ), Trunc((Y - ImgVwD.OffsetVert) ));
ImgVwD.ScrollToCenter( Trunc((ImgVwD.Bitmap.Width - X) + ImgVwD.OffsetHorz), Trunc((ImgVwD.Bitmap.Height - Y) + ImgVwD.OffsetVert));
ImgVwD.ScrollToCenter( Trunc((ImgVwD.Bitmap.Canvas.ClipRect.Left + X)), Trunc((ImgVwD.Bitmap.Canvas.ClipRect.Top + Y)));
{//GetScrollPos
if MiScrPX > X then
begin
iNewX := iNewX - (MiScrPX - X);
end
else if MiScrPX <= X then
begin
iNewX := iNewX + (X - MiScrPX);
end;
if MiScrPY > Y then
begin
iNewY := iNewY - (MiScrPY - Y);
end
else if MiScrPY <= Y then
begin
iNewY := iNewY + (Y - MiScrPY);
end;
if iNewX < 0 then iNewX := 0;
if iNewY < 0 then iNewY := 0;
if (iNewX > (ImgVwD.Bitmap.Width - ImgVwD.Width)) then iNewX := ImgVwD.Bitmap.Width - ImgVwD.Width;
if (iNewY > (ImgVwD.Bitmap.Height - ImgVwD.Height)) then iNewY := ImgVwD.Bitmap.Height; // - ImgVwD.Height;
ImgVwD.ScrollToCenter(iNewX, iNewY);
}
End;