Q&A

  • 이미지component 사용방법에 대하여
delphi5.0을 가지고 프로그램을 개발하고 있는 중입니다.



근데, delphi를 자알 몰라서 여쭈어 보고자 합니다.



하고 싶은 것은 화면상에 이미지 그림이 있고,



그 그림에 마우스가 가면 다른 이미지로 전환되며,



이미지 영역을 마우스가 떠나면 원래의 이미지로 되었으면 합니다.



하는 방법을 모르겟군요.



아시는 분은 꼭 도와 주십시오.

1  COMMENTS
  • Profile
    조규춘 2000.06.15 14:06
    이태수 wrote:

    > delphi5.0을 가지고 프로그램을 개발하고 있는 중입니다.

    >

    > 근데, delphi를 자알 몰라서 여쭈어 보고자 합니다.

    >

    > 하고 싶은 것은 화면상에 이미지 그림이 있고,

    >

    > 그 그림에 마우스가 가면 다른 이미지로 전환되며,

    >

    > 이미지 영역을 마우스가 떠나면 원래의 이미지로 되었으면 합니다.

    >

    > 하는 방법을 모르겟군요.

    >

    > 아시는 분은 꼭 도와 주십시오.





    이거는 제가 하는 방식인데..



    다음과 같이 해보시기 바랍니다.



    예전에 계산기만들때 쓴건데.



    우선 바탕에는 마우스가 가기전그림을..



    그 위에 마우스를 가져갔을때 생길 그림들을 놓고.



    function InControl(x, y: integer; Control: TControl): boolean;

    begin



    Result := (Control.Top <= y) and (y < Control.Top + Control.Height) and

    (Control.Left <= x) and (x < Control.Left + Control.Width);

    end;





    procedure Tfrmcal.FormMouseMove(Sender: TObject; Shift: TShiftState; X,

    Y: Integer);

    var

    Parent: TControl;

    begin

    Parent := TControl(Sender).Parent;

    if Parent <> nil then begin

    x := TControl(Sender).Left + x;

    y := TControl(Sender).Top + y;

    end;

    SB0.Visible := InControl(x, y, SB0);

    SB1.Visible := InControl(x, y, SB1);

    SB2.Visible := InControl(x, y, SB2);

    SB3.Visible := InControl(x, y, SB3);

    SB4.Visible := InControl(x, y, SB4);

    SB5.Visible := InControl(x, y, SB5);

    SB6.Visible := InControl(x, y, SB6);

    SB7.Visible := InControl(x, y, SB7);

    SB8.Visible := InControl(x, y, SB8);

    SB9.Visible := InControl(x, y, SB9);

    SBDot.Visible := InControl(x, y, SBDot);

    SBP_M.Visible := InControl(x, y, SBP_M);

    SBPlus.Visible := InControl(x, y, SBPlus);

    SBEqul.Visible := InControl(x, y, SBEqul);

    SBCe.Visible := InControl(x, y, SBCe);

    SBMc.Visible := InControl(x, y, SBMc);

    SBMr.Visible := InControl(x, y, SBMr);

    SBMs.Visible := InControl(x, y, SBMs);

    SBMPlus.Visible := InControl(x, y, SBMPlus);

    SBSqrt.Visible := InControl(x, y, SBSqrt);

    SBMulti.Visible := InControl(x, y, SBMulti);

    SBPercent.Visible := InControl(x, y, SBPercent);

    SBDiv.Visible := InControl(x, y, SBDiv);

    SBHund.Visible := InControl(x, y, SBHund);

    SBMinus.Visible := InControl(x, y, SBMinus);

    end;





    여기서 SB로 시작하는 것들은 그 마우스를 대었을때 나타내게될 그림이므로.



    처음에는 visible를 false로 놓고 사용하시면 됩니다.

    그럼 행복하십시요. 조규춘올림.

    • 조규춘
      2000.06.15 19:19
      사발우성 wrote: > 잘 돌아 가다가 갑자기 이런 에러가 나옴당.....ㅠ.ㅠ 도대체 요건 무슨 에러 인가엽.....
    • 초보
    • 2000.06.15 19:04
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 심동훈
      2000.06.16 19:24
      타락천사 wrote: > 안녕하세여.. 타락임다...^^ > > 0.5, 1.5, 2.5, 3.5.... > > Round() 에 넣어...
    • 타락천사
      2000.06.16 20:38
      안녕하세여.. 타락임다..^^ 글쿤여... 보통 반올림에선 .5 면 올림을 하져.. Round()형의 반올림을 ...
    • 김해중
      2000.06.16 03:29
      이미지에 목마른 소녀 wrote: > 디비 이미지를 넣어야 하는데 어떻게 해야하는지 몰라 > 심각한 우울중에...
    • young
    • 2000.06.15 18:11
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김해중
      2000.06.16 03:43
      young wrote: > qrdbtext 의 datafield를 클릭할때마다 조건에 맞는 쿼리의 필드 > 를 바꾸고 싶은데여.....
    • 윤정
    • 2000.06.15 17:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.06.15 19:01
      윤정 wrote: > 레포트 자료를 구할려구 오늘 첨 들어와 봤는데요... > 음..제가 찾는 자료가 없어서요.. ...
    • 은진
    • 2000.06.15 11:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.06.15 14:08
      은진 wrote: > 안녕하세요 저는 델파이를 공부하는 학생인데요 아직 초보라서 잘 몰라요 > 그래서 그러...
    • 이태수
    • 2000.06.15 11:09
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.06.15 14:06
      이태수 wrote: > delphi5.0을 가지고 프로그램을 개발하고 있는 중입니다. > > 근데, delphi를 자알 몰...
    • 김경식
    • 2000.06.15 09:47
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.06.15 14:58
      김경식 wrote: > 1. 클립보드의 내용중에 Bitmap이 있으면 그것을 jpg파일로 저장할려고 합니다. > 그...
    • 김경식
      2000.06.15 19:31
      답변에 진심으로 감사드립니다. 근데, 두번째 질문이 무슨 말인지 모르겠다고 하셨는데, 아마도 제가 설...
    • 조규춘
      2000.06.15 14:00
      비룡득주 wrote: > 안녕하세요..! > 프로그램 셋업을 동시에 두개를 하고 싶은데여!! > InstallShield에...
    • 비룡득주
      2000.06.15 14:32
      안녕하세요!!! 여기는 이미 제가 둘러 본곳이군요! 여기에서 샅샅이 뒤졌는데도 제가 원하는 자료를 찾을...
    • 조규춘
      2000.06.15 14:44
      비룡득주 wrote: > 안녕하세요!!! > 여기는 이미 제가 둘러 본곳이군요! 그 둘러 본곳은 저의 사이트...
    • 비룡득주
      2000.06.16 01:16
      안녕하세요!! 규춘님 답변 감사합니다. > 그 둘러 본곳은 저의 사이트 이고, 그 자료도 제가 올린 것...
    • 최용일
      2000.06.15 09:38
      안녕하세요. 최용일입니다. 아니 누가 255자밖에 안들어간다고 했어요? 아주 옛날 옛적의 이야기를 하시...
    • 민성기
      2000.06.15 09:27
      궁금이... wrote: > 안녕하십니까? > 급할때 마다 이곳에서 도움을 받고 있는 델초보입니다... > 다름이...
    • 강인규
      2000.06.15 12:12
      고수님들이 잠시 간과하신게 있는거 같아 한자 적습니다. 혹시 1.5와 2.5를 반올림 해보셨습니까? 값은...
    • 이일형
    • 2000.06.15 06:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 코스
      2000.06.15 12:52
      이일형 wrote: > 아래 에러를 보시고 한수 가르쳐주세요.. > > Directory is controlled by other .NET...
    • mega
    • 2000.06.15 05:30
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 초보...
    • 2000.06.15 05:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이용호
      2000.06.16 00:24
      우선 RUN의 Unregister ...를 실행하세요. 또한 Component/Install Packages.../Packages/Borland User Co...
    • 정주
    • 2000.06.15 04:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.06.15 17:43
      안녕하세요. 최용일입니다. 자료실의 GraphicEx v7.1을 사용해보세요. ^^ 항상 즐코하세요. 정주 ...
    • 조유정
    • 2000.06.15 03:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 강인규
      2000.06.15 05:55
      혹시 디테일을 한장씩 잡아서 사용하시나요? 그럴 경우 디테일이 페이지 크기에 근접하면 첫장이 안나올 ...