답변이 없어서 다시 올립니다.
읽어 보시고 부디 조언 점 해주세요 ㅠㅠ
현재 TImage로 특정 폴더에 이미지들를 가져와서 보여주는건 됩니다.
문제는 사용자가 원하는 시간동안 딜레이해서 슬라이드쇼처럼 진행하는 부분입니다.
지금은 무식하게 유저의 딜레이시간 입력없이
임의로 5초의 배수시간마다 다음이미지로 이동하게 해놨습니다.
깔삼하게 코딩이 안되네요 ㅠㅠ
도와주세요.
P.S 일정시간 키값 입력이 없으면 슬라이드쇼 진행을 하고 아무키라도 입력 받으면 멈추는 기능은 어떻게 할 수 있을런지 한 수 부탁드립니다.
꼭 화면보호기 기능 같은데요. ^^;
아래는 소스에서 발췌한 주요 부분입니다.
// 파일 이름 가져오는 부분
r := FindFirst('C:Data*.jpg', FaAnyfile, DirInfo);
while r = 0 do begin
if ((DirInfo.Attr and FaDirectory <> FaDirectory) and
(DirInfo.Attr and FaVolumeId <> FaVolumeID)) then
cb.Items.Add(DirInfo.Name);
r := FindNext(DirInfo);
end;
// 타어머 안에서 코딩부분
giCnt <- 이미지 순서 번호
if lsTime = '00' then // 00초
begin
imgBanner.Picture.LoadFromFile('C:Data'+cb.Items.Strings[giCnt]);
inc(giCnt);
end
else
if lsTime = '05' then // 05초
begin
imgBanner.Picture.LoadFromFile('C:Data'+cb.Items.Strings[giCnt]);
inc(giCnt);
end
...........
걍 쓰레드 이용해서 함 만들어 봤습니다...
소스 보시고 참고하세요...
쓰레드 파라매터는
AFileList: TStringList; => 파일리스트
AImage: TImage; => 보여줄 이미지 객체
ADelayTime: DWORD; => 딜레이타임
ASelfInstance: TViewImageThread => 자신의 인스턴스
그리고 폼의 KeyPreView속성을 True로 했습니다...
쩝 첨부파일소스에는 키입력할때 멈추지 않고 다음 그림을 보여주도록했습니다....
^^ 항상 즐코하세요...