창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


소스자료실
- 창조 소스를 공유하는 곳입니다. 첨부가능 확장자는 *.zip,*.rar,*.arj,*.exe,*.jpg,*.png,*.gif,*.cuf,*.nhp,*.nhw 입니다.


LIST ALL
Posted by 박종훈2007-01-10 20:37:39, Hit : 6584
창에 드래그 된 파일명 얻기!
Homepage : http://www.canxan.com/~qnrdlqkrwhdgns
File #1 : Drag_Files.gif (9.9 KB)   Download : 168
File #2 : Drag_Files.rar (720.4 KB)   Download : 231
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=pds_sc&no=556


Q/A 질답용 소스인데도 불구하고, 유용할것 같아서, 이렇게 소스자료실에 올립니다.
 지상현님의 여러 소스를 참고하여 약간씩 수정한 것임을 미리 알립니다.

이 소스는.. 그리 완벽하지 않은  소스라고 봅니다ㅠ
일단, "아~ 가능하구나!" 라는 맛보기 정도로만;


박종훈   2007-01-10 PM 8:40:09  
원래는.. 하나의 파일명만 얻는 걸로 했는데,
답변용 소스이므로.. 여러 소스 봐가면서, 제작했습니다ㅠ

참고1. 지상현님의 클립보드 관련 DLL소스.
참고2. 한국 델파이 개발자모임의 팁중 일부.
김길남   2007-01-10 PM 8:57:40  
완벽하지 않다는 이유는 추가로 드래그 해서 넣었을때 기존에 리스트가 사라진다는 점인가요?
박종훈   2007-01-10 PM 9:08:47  
아, 그거는.. 원래 제가 의도적으로 그랬습니다^^;
창의 자판을 눌렀을때를 보세요~ [파일명을 출력하는 명령어가 있습니다.]

완벽하지 않다는 이유는.. 뭔지 모를 버그가 있을수도 있다는 소리이며, 머 그냥 사용하셔도 무난합니다^^;
김길남   2007-01-10 PM 9:26:21  
리스트박스0.내용.추가(드래그함수.Get_dFile);
로 해서 계속 추가 하도록 했는데,,,,
문제는 있는 파일이면 삭제 되야 할텐데
이것도 연구 하면 되긴 할듯 합니다~
김길남   2007-01-10 PM 9:36:30  
음 언젠가는 마우스 오른쪽으로 추가하는 것도 가능하겠네요,,,
설치할때 또는 실행될때 레지스트에 뭔가 등록을 해야겠지요?
박종훈   2007-01-11 AM 8:31:04  
이런 죄송합니다ㅠ
리스트박스0.내용.추가(드래그함수.Get_dFile); 의 경우.. 문제가 -_-;
박종훈   2007-01-11 PM 1:23:35  
[ㅎ문자열.추가] 를 사용하시면.. ㅎ리스트박스의 경우.. 이상하게 출력됩니다 -_-;
ㅎ메모의 경우에는.. 정상적이지만요;

아참, 파일이면 삭제해야 하는것은..
간단히, [파일존재여부]명령어로 파일인지 검사한 후에..
만일 맞다면, 해당 줄을 삭제하는 방법으로 하시면 됩니다^^..
이진백   2007-01-12 AM 9:23:31  
좋네요... 창조는 이런게 늘 아쉬웠죠...
김길남   2007-01-13 AM 1:16:58  
그럼 리스트 박스추가 는 당분간 이상하게 출력됨이 어쩔 수 없는건가요?
지상현   2007-01-13 AM 1:47:25  
당장 필요하면 일단 메모로 출력하고 다시 리스트로 옮기면 일단 잘 되지 않을까요...
김길남   2007-01-13 AM 3:08:15  
네 지상현님 고맙습니다,,
에디트로 출력복사 출력해도 뒤에 기호가 붙더군요,,,
김길남   2007-01-13 AM 5:43:13  
파일 제목만 출력할려면 문자 자르기를 해야 할텐데요.
일단 ㅎ메모에 경로와 파일명을 출력후
거기서 파일명만 ㅎ리스트박스에 뽑아 와야 하는거지요?
그런다음에 ㅎ메모와 ㅎ리스트박스를 줄위치로 동기화 시켜 플레이 하면 되지 않을까 하는데,,,
문제는 파일명을 어떻게 뽑아야 할지 좀 막막 합니다,
아님 다른 뭐가 있는건지요?
박종훈   2007-01-13 AM 8:16:36  
어헛;
창조에는, 파일명만 추출하는 명령어가 있습니다~
도움말의 [파일관련 함수 모음]에 보시면..
[파일명추출] 이라는 명령어가 있습니다^^..

아, 임시로, ㅎ메모를 사용하지 않고도..
제가 예전에, 팁에 올린.. [ㅎ문자열]을 사용해서..
해결될지는 모르겠네요^^; [해보지는 않았습니다만;]
김길남   2007-01-13 PM 12:05:50  
네 보고도 몰랐었네요^^
그런데 왜 메모장에 먼저 추출하고 그걸 다시 리스트에 복사 해야 된다고 생각 했냐면요,,,
만약 파일명만 바로 추출하면 경로가 없어져서 만약에 매채제생기라면 매체제생기가 무엇을 재생할지를 모르잖아요,,경로가 없으니까요,,
박종훈   2007-01-13 PM 12:29:34  
아~ 그렇군요ㅋ
김길남   2007-01-13 PM 12:40:18  
에고 근데 문제는 파일명추출 하니까 ㅎ메모0 에 있는 한줄밖에 않오네요,,,

메모0.내용.전체문자:=드래그함수.Get_dFile;
리스트박스0.내용.전체문자 := 파일명추출(메모0.내용.전체문자);

너무 쉽게 추출 된다 싶었더니 역시,,
박종훈   2007-01-13 PM 1:00:47  
이런;;
드래그함수.Get_dFile; 이 함수를 실행하시게 되면..
여러줄의 형태로나옵니다.

에디트에 표시할경우.. 이상한 문자가 나오신다고 하셨죠?
그문자가 바로.. 줄바꿈 문자입니다~

즉.. 파일명만 추출하실경우에는..
반복문 돌리셔서.. 하셔야 겠습니다^^;
김길남   2007-01-13 PM 1:53:18  
내용전체줄수를 구한다음
맨윗줄부터 하나씩 추가 하면서 파일명을 추출후 더해간다음
결과값을 리스트박스0에 출력하는거군요,,,
정성우   2007-01-13 PM 1:57:48  
리스트에 하나하나 더해서 추가하려면,
리스트박스0.내용.전체문자 := 리스트박스0.내용.전체문자 + 드래그함수.Get_dFile;
김길남   2007-01-13 PM 2:38:11  
정성우님 그런것도 가능 하군요,,,
그런데,
현제 구하고자 하는건
드래그함수로 추출된 경로포함된 파일명에서 파일명만 추출 하고자 함니다. 그럼 정성우님 문법은 답이 아니지요?
암튼 실제 적용해보니까 재미있는 결과가 나오네요,,,
박종훈   2007-01-13 PM 3:28:30  
흐흣~ 정성우님 답변이 빙고네요ㅋ
[경로 + 파일] 형태에서, [파일]명만 빼오는것은..
[파일명추출]이라는 명령어가 존재합니다.

그리고, 김길남님에서 원하시는 것을 하기위해서는..
그냥 파일명추출(메모0.내용.전체문자); 만 하는것으로는 안되며,

[반복문] 이라는 것을 사용해서.. 줄 하나하나씩,
파일명만 분리하는 방법밖에 없습니다ㅠ
김길남   2007-01-13 PM 4:54:17  
이제 다시 글을 보니 정성우님 내용이 파악이 되는군요
총리스트=원래있던리스트+새로드래그해서 불러온리스트 라는 추가하는 문법이군요,,, 어찌 저런 생각을 하시는지,,,
지상현   2007-01-13 PM 7:01:31  
종훈님, 이거보다 더 직관적으로 해결할 수 있는 방법이 있을 것 같네요 ^^;

델파이쪽 소스를 수정해야 하는데,
여러 파일들 드래그 하면 다 모아서 줄로 구분해서 보내는게 아니라, 각각 파일 하나 하나를 알려주면 되지 않을까요?
SendSignal 함수는 키 사건이 끝날때까지 기다리거든요. (SendMessage기 때문에)

그럼 단순히 파일명 하나씩 추가하면 될 것 같은 ^^;
(더불어, 마지막 파일을 추가한 다음 "" 문자열로 신호를 보내서 목록이 끝났다는 것을 알리면 더 좋겠네요. 내용.갱신끝 이라도 해주면 ^^)
박종훈   2007-01-13 PM 8:27:33  
오~ 그런 함수도 있었군요^^..
김길남   2007-01-18 PM 4:42:59  
현제 파일만 드롭해서 추가 되는데
폴더를 드롭해서 추가는 불가 한가요?
박종훈   2007-01-18 PM 4:47:18  
폴더도 가능합니다~
단, 폴더 안의 파일목록이 추가되는 것이 아닌.. 폴더명만 추가됩니다.
김길남   2007-01-18 PM 6:54:12  
ㅎㅎ 어이고,,,
그럼 지상현님의 작품을 기대해보는 수 밖에 없네요 ^^
박종훈   2007-01-18 PM 7:33:40  
아, 지상현님께서 말씀하신 건.. 이미 해결되었지만, 배포가 안된;
일단 약간 수정해서 올리겠습니다^^;

문제라면..
제가 예전에 팁게시판에 올린 갱신관련 버그팁있죠? 그거때문에_-;;
김길남   2007-01-19 PM 3:32:29  
네,,,
현제 드롭DLL 은 하나의 창에만 효력이 발생하도록 구조가 되 있는거지요?
가령요,,,창두개를 두고
메인창. 과 리스트창 두개 또는 그 이상창이 있을때,,.
어떤창에 떨어 드려도 리스트창에 같은 결과가 나와야 할텐데
제가 응용을 못한건가요?
박종훈   2007-01-19 PM 3:41:53  
아닙니다^^; 창이 몇개든 작동합니다.
즉, DLL이 하나라고 해서 하나의 창만 되는것이 아니라.. 모두 가능합니다~

그러면.. Windows API를 사용할때 쓰는.. user32.dll은.. 하나인데;
몇십개의 윈도우를 어떻게 하겠어요;ㅋ
김길남   2007-01-19 PM 4:01:20  
ㅎㅎ 저는 핸들이라고 인자가 있어서 먼저 잡은 창의핸들 하나에만 작동하나 했어요,,, 더 연구 해볼께요,,
박종훈   2007-01-19 PM 4:12:01  
흐흐~ 저도 그런줄 알았어요ㅠ
그런데.. 실제로 해보니 잘 작동하더군요^^.. 그리고 지상현님께서 몇가지 정보를 더 알려주셨고요^^..

[핸들]인자에 각 창의 핸들을 넣으면.. 해당 창의 [자판을 눌렀을때]에서 받을수 있죠~^^..
김길남   2007-01-19 PM 4:44:20  
//창0 생성할때.....
창0.드래그함수.SetDrag(창0.핸들, 200);

//창1 생성할때...
창0.드래그함수.SetDrag(창1.핸들, 200);

작동이 않네요,,잘못 짚은건가요?
박종훈   2007-01-19 PM 6:41:34  
어라;; 한 프로그램에서는 하나의 DLL만 가능한가 봅니다ㅜ
[제가 테스트해본건.. 창단위가아닌, 프로세스단위여서^^;]
김길남   2007-01-19 PM 7:16:05  
차라리 않된다고 하니 오히려 속시원하네요..
하루종일 이리저리 해보다 지쳤습니다,,,
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H

   창에 드래그 된 파일명 얻기! [35]
박종훈 2007/01/10  6584
678
   창에 네모상자 그리는 소스...
nylon 2002/09/14  6908
677
   창 이동검사하기 [4]
박종훈 2006/08/17  5881
676
   창 밖으로 마우스 커서 못 나가게 하기 ^^; [9]
박종훈 2006/03/17  8123
675
   쩝 버튼 누르기 예제... [2]
Fream 2003/03/17  5875
674
   질문게시판 답변 [2]
강현구 2010/10/09  5156
673
   진수 변환기(2~36진수) [4]
550ml 2004/11/05  9676
672
   지상현님 ActiveX 강좌에 힘입어 제작한 winamp 방송듣기 [5]
박재성 2007/08/12  6213
671
   지뢰찾기 솟스 [3]
성인e 2009/05/05  5711
670
   지뢰찾기 (속도 개선) [1]
성인e 2015/11/10  5918
669
   지뢰찾기
성인e 2011/02/20  5870
668
   지니해킹프로그램(예전에 버디버디랑 같음) [1]
위자드 2003/12/25  6733
667
   지금까지 제작한 RPG온라인 게임 소스입니다..[내용참고] [3]
권선중 2008/08/02  11442
666
   중력 Revival 핵심소스 [6]
변혁수 2006/07/21  6850
665
   주민등록번호 검사 프로그램입니다.. [2]
nylon 2002/09/10  9476
664
   좀비 죽이기 게임
김대명 2011/06/08  6360
663
   조금 심심해서...
oOPpoYaOo 2007/05/22  6175
662
   제조정한 웹서버(소스포함) [12]
박재성 2006/08/27  6526
661
   제곱수 판단
성인e 2010/12/14  5171
660
   제가 구현한 암복호화 기법소스입니다.. [6]
권선중 2005/06/26  6383
659
   접속자 목록 보기 2 [3]
지상현 2006/05/16  7165
658
   전화요금관리장 입니다(소스분석용)
김정수 2005/12/02  5342
657
   전자배치 솟스 [1]
성인e 2009/11/01  5935
656
   저의 첫 작품 smp3 [5]
리시 2004/02/05  6871
655
   재미있는 퀴즈게임의 소스 - 퀴즈왕중왕 [3]
최재일 2004/06/18  8287
LIST ALL   Prev [1][2][3][4] 5 [6][7][8][9][10]..[32] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인