Q&A

  • 이미지 컨트롤을 드래그 하려면?
게시판의 글을 쭉~~~ 읽어 보니요.

버튼을 실시간으로 움직일 수 있는 것이 있더라고요.

이걸 이미지 컨트롤에 적용하니 되질 않네요.

전혀 움직이지 않아서요.

이거 어떻게 이미지 컨트롤을 드래깅 할 방법 없나요?

1  COMMENTS
  • Profile
    구창민 2000.02.10 10:39
    배꼽 wrote:

    > 게시판의 글을 쭉~~~ 읽어 보니요.

    > 버튼을 실시간으로 움직일 수 있는 것이 있더라고요.

    > 이걸 이미지 컨트롤에 적용하니 되질 않네요.

    > 전혀 움직이지 않아서요.

    > 이거 어떻게 이미지 컨트롤을 드래깅 할 방법 없나요?



    구창민입니다.

    아래는 일전에 예제를 만들어본 이미지컴포넌트를 실행시

    마우스로 이동시키는 간단한 소스입니다.

    그럼, 즐거운 프로그래밍 하세요~



    unit Unit1;



    interface



    uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    ExtCtrls;



    type

    TForm1 = class(TForm)

    Image1: TImage;

    procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;

    Shift: TShiftState; X, Y: Integer);

    procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;

    Shift: TShiftState; X, Y: Integer);

    procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,

    Y: Integer);

    private

    { Private declarations }

    public

    { Public declarations }

    end;



    var

    Form1: TForm1;

    MouseDownSpot : TPoint;

    Capturing : bool;



    implementation



    {$R *.DFM}



    procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;

    Shift: TShiftState; X, Y: Integer);

    begin

    SetCapture(longint(Image1));

    Capturing := true;

    MouseDownSpot.X := x;

    MouseDownSpot.Y := Y;

    end;



    procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;

    Shift: TShiftState; X, Y: Integer);

    begin

    ReleaseCapture;

    Capturing := false;

    Image1.Left := Image1.Left - (MouseDownSpot.x - x);

    Image1.Top := Image1.Top - (MouseDownSpot.y - y);

    end;



    procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,

    Y: Integer);

    begin

    if Capturing then begin

    Image1.Left := Image1.Left - (MouseDownSpot.x - x);

    Image1.Top := Image1.Top - (MouseDownSpot.y - y);

    end;

    end;



    end.

    • 김광섭
      2000.02.10 19:42
      초짜베기 wrote: > 제목으로 보아 조금 에메모호하죠. > 질문 내용은 다음과 같습니다. > > 즉, 특정 ...
    • 김광섭
      2000.02.10 19:52
      무림식객 wrote: > 델파이 무림식객입니다. > 테이블을 가장 빠르게 초기화 하려는데 어떻게 하여야 하는...
    • 김천식
    • 2000.02.10 18:07
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김광섭
      2000.02.10 19:58
      김천식 wrote: > 테이블의 특정필드 내용을 다른 필드로 일괄 복사하려는데 가장 효과적으로 > 복사하는 ...
    • 김천식
      2000.02.10 23:57
      테이블에서 테이블간의 필드 복사가 아니고 하나의 테이블에서 필드간 자료 교환이 방법입니다. 즉, A필...
    • 이영헌
    • 2000.02.10 16:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김광섭
      2000.02.10 20:07
      이영헌 wrote: > 안녕하십니까? 좋은 아침입니다. > > 퀵레포트 양식이 전체 30줄 인쇄할 크기입니다. ...
    • 김광섭
      2000.02.10 20:22
      전성환 wrote: > 안녕하십니까? > > 저는 퀵레포트를 처음 사용해봅니다. > 이러한 질문을 하는게 부...
    • 이재식
      2000.02.10 12:47
      무지한 wrote: > isam파일인지 정확히는 모르겠지만 아마 isam인걸루 알구있는 > > 파일이 하나 있는데...
    • 무지한
      2000.02.11 11:58
      > Isam파일은 어떤 툴을 이용해서 직접 디비화 하는 방법은 모르겠는데요, > 혹 그것이 cobol로 되어있...
    • 델초
    • 2000.02.10 08:51
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 배꼽
    • 2000.02.10 08:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.02.10 10:39
      배꼽 wrote: > 게시판의 글을 쭉~~~ 읽어 보니요. > 버튼을 실시간으로 움직일 수 있는 것이 있더라고요...
    • 민석이
    • 2000.02.10 07:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이재식
      2000.02.10 08:14
      민석이 wrote: > 다름이 아니라. 이미지 확대 축소를 할려고 하는데 > 화살표 키 값을 몰라 고생하고 있...
    • 초짜
    • 2000.02.10 05:37
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.02.10 06:09
      초짜 wrote: > 스피드버튼과 같은 윈도우 컨트롤에 키이벤트를 넣으려면 어찌해야 > 하나요? > 비튼 버...
    • 최종민
    • 2000.02.10 05:11
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이재식
      2000.02.10 07:03
      최종민 wrote: > 아...매일 질문하는 종민입니다... > 제가 form을 두개 만들었답니다... > 둘다 자동생...
    • 허진
    • 2000.02.10 04:27
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.02.10 06:08
      허진 wrote: > 프로그램에서 환경을 변경한 후에 > > 종료를 하고 다시 프로그램을 실행하고 싶거던요....
    • 이재식
      2000.02.10 06:05
      허진 wrote: > 프로그램에서 환경을 변경한 후에 > > 종료를 하고 다시 프로그램을 실행하고 싶거던요....
    • 최재원
    • 2000.02.10 03:55
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.02.10 06:04
      최재원 wrote: > 수고 많습니다. > > 지금 데이타 백업하는 작업을 하고 있는데요, > > 타겟 디렉토...
    • 최재원
      2000.02.10 20:39
      먼저 답변해 주신것 감사합니다. 메세지 던져 주는 것은 가능한데요, 문제는 한번 드라이브를 읽고, ...
    • 구창민
      2000.02.10 21:47
      최재원 wrote: > 먼저 답변해 주신것 감사합니다. > > 메세지 던져 주는 것은 가능한데요, > > 문제...
    • 최재원
      2000.02.10 23:13
      먼저 이렇게 직접 테스트 까지 해주시고, 두번씩이나 답변해 주신것 정말 감사합니다. 제가 테스트 하던...
    • 엄화용
    • 2000.02.10 03:16
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김광섭
      2000.02.10 23:34
      엄화용 wrote: > * 디비그리드를 이용해서 자료사전을 만들었습니다. > 디비그리드에 레코드수를 20개...
    • 이재식
      2000.02.10 08:13
      엄화용 wrote: > * 디비그리드를 이용해서 자료사전을 만들었습니다. > 디비그리드에 레코드수를 20개...