Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
이미지component 사용방법에 대하여
delphi5.0을 가지고 프로그램을 개발하고 있는 중입니다.
근데, delphi를 자알 몰라서 여쭈어 보고자 합니다.
하고 싶은 것은 화면상에 이미지 그림이 있고,
그 그림에 마우스가 가면 다른 이미지로 전환되며,
이미지 영역을 마우스가 떠나면 원래의 이미지로 되었으면 합니다.
하는 방법을 모르겟군요.
아시는 분은 꼭 도와 주십시오.
1
COMMENTS
조규춘
•
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로 놓고 사용하시면 됩니다.
그럼 행복하십시요. 조규춘올림.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
사발우성
•
2000.06.15 19:09
1
COMMENTS
/
0
LIKES
((hurry up)) 에러좀 봐줘엽......ㅠ.ㅠ
조규춘
•
2000.06.15 19:19
사발우성 wrote: > 잘 돌아 가다가 갑자기 이런 에러가 나옴당.....ㅠ.ㅠ 도대체 요건 무슨 에러 인가엽.....
초보
2000.06.15 19:04
0
COMMENTS
/
0
LIKES
Tchartfx 컴포넌트 사용법?
델초보
2000.06.15 18:53
0
COMMENTS
/
0
LIKES
[재질문] ms-sql과의 연결에서..
타락천사
•
2000.06.15 18:43
2
COMMENTS
/
0
LIKES
[참고] Round() 함수는 버그가 있어여..
심동훈
•
2000.06.16 19:24
타락천사 wrote: > 안녕하세여.. 타락임다...^^ > > 0.5, 1.5, 2.5, 3.5.... > > Round() 에 넣어...
타락천사
•
2000.06.16 20:38
안녕하세여.. 타락임다..^^ 글쿤여... 보통 반올림에선 .5 면 올림을 하져.. Round()형의 반올림을 ...
이미지에 목마른 소녀
•
2000.06.15 18:40
1
COMMENTS
/
0
LIKES
DBImage사용법이여 급해여!!
김해중
•
2000.06.16 03:29
이미지에 목마른 소녀 wrote: > 디비 이미지를 넣어야 하는데 어떻게 해야하는지 몰라 > 심각한 우울중에...
young
•
2000.06.15 18:11
1
COMMENTS
/
0
LIKES
//질문//qrdbtext의 datafield 실행시에 바꾸기...
김해중
•
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
이미지component 사용방법에 대하여
delphi5.0을 가지고 프로그램을 개발하고 있는 중입니다. 근데, delphi를 자알 몰라서 여쭈어 보고자 합니다. 하고 싶은 것은 화면상에 이미지 그림이 있고, 그 그림에 마우스가 가면 다른 이미지로 전환되며, 이미지 영역을 마우스가 떠...
조규춘
•
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 08:10
4
COMMENTS
/
0
LIKES
InstallShield...
조규춘
•
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 08:13
1
COMMENTS
/
0
LIKES
string형보다 큰문자열을 받을수 있는 변수가 있나요?
최용일
•
2000.06.15 09:38
안녕하세요. 최용일입니다. 아니 누가 255자밖에 안들어간다고 했어요? 아주 옛날 옛적의 이야기를 하시...
궁금이...
•
2000.06.15 07:11
2
COMMENTS
/
0
LIKES
델파이에서 올림하는 함수는?(반올림말고..)
민성기
•
2000.06.15 09:27
궁금이... wrote: > 안녕하십니까? > 급할때 마다 이곳에서 도움을 받고 있는 델초보입니다... > 다름이...
강인규
•
2000.06.15 12:12
고수님들이 잠시 간과하신게 있는거 같아 한자 적습니다. 혹시 1.5와 2.5를 반올림 해보셨습니까? 값은...
이일형
•
2000.06.15 06:47
1
COMMENTS
/
0
LIKES
파라독스DB에서 LOCK이 걸려요~~
코스
•
2000.06.15 12:52
이일형 wrote: > 아래 에러를 보시고 한수 가르쳐주세요.. > > Directory is controlled by other .NET...
mega
2000.06.15 05:30
0
COMMENTS
/
0
LIKES
quickReport 에러해결좀 부탁합니다.
초보...
•
2000.06.15 05:15
1
COMMENTS
/
0
LIKES
AcitveX 제거에 관하여...
이용호
•
2000.06.16 00:24
우선 RUN의 Unregister ...를 실행하세요. 또한 Component/Install Packages.../Packages/Borland User Co...
델초보
2000.06.15 04:36
0
COMMENTS
/
0
LIKES
소스좀 봐 주세요
정주
•
2000.06.15 04:25
1
COMMENTS
/
0
LIKES
TGA 파일 처리에 대해서....
최용일
•
2000.06.15 17:43
안녕하세요. 최용일입니다. 자료실의 GraphicEx v7.1을 사용해보세요. ^^ 항상 즐코하세요. 정주 ...
문진현
2000.06.15 04:02
0
COMMENTS
/
0
LIKES
Missing data provider or data packet이라는 에러..(Midas
조유정
•
2000.06.15 03:39
1
COMMENTS
/
0
LIKES
퀴레포트 에서...
강인규
•
2000.06.15 05:55
혹시 디테일을 한장씩 잡아서 사용하시나요? 그럴 경우 디테일이 페이지 크기에 근접하면 첫장이 안나올 ...
이태수
2000/06/15 11:09
Views
159
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 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로 놓고 사용하시면 됩니다.
그럼 행복하십시요. 조규춘올림.