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


창조 팁
- '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요..


LIST ALL
Posted by 지상현2006-05-27 19:01:27, Hit : 6614
리스트박스 가지고 놀기!
Homepage : http://ssidang.x-y.net
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=tip&no=282
리스트박스의 숨겨진 기능(?)을 적극 활용해 봅시다.
SendMessage를 이용해서 이 숨겨진 기능들을 써먹어볼 수 있습니다.

손상진님께서 도움을 많이 주셨습니다~



참고로, 이 예제들은 내부 함수를 써도 괜찮지만, 사용자함수로 만들어 사용하시는 것을 권장합니다.
핸들은 모두 리스트박스의 핸들입니다.

상황에 맞게 둘 중 하나를 적절히 사용합니다.
실수함수: SendMessageA(실수: 핸들, 메시지, 인자1, 인자2);
실수함수: SendMessageA(실수: 핸들, 메시지, 인자1; 문자: 인자2);



* 항목이 선택되었을까? LB_GETSEL
SendMessage(핸들, 391, 줄번호, 0);

알아보고 싶은 줄의 번호를 넣는다. 0부터 시작한다.
0이 반환되면 선택되지 않은 거고, 아니면 선택된 것(배경이 파랗게 된)이다.
다중선택이 참일 때 유용하다.


* 특정 항목을 선택하자! LB_SETSEL
SendMessage(핸들, 389, 선택여부, 줄번호);

줄번호의 항목을 선택하거나, 선택하지 않는다.
선택여부는 1, 0을 넣는데 1을 넣으면 선택한다.
다중선택이 참일 때 유용하다.


* 파일 목록 집어넣기 LB_DIR
SendMessage(핸들, 397, 플래그, "경로");

경로에 있는 파일 목록을 리스트박스에 집어넣는다.
예를 들어 "C:\*.exe" 라고 지정하면 C:\에 있는 모든 exe 파일의 목록을 집어넣는다.
속도가 굉장히 빠르기 때문에 쓸만하다.

플래그에는 다음과 같은 값을 넣을 수 있다.(여러 값을 넣으려면 + 로 더해서 넣는다.)
1: 읽기 전용 파일
2: 숨김 파일
4: 시스템 파일
16: 폴더(이름이 [] 으로 감싸져 나옴)
16384: 드라이브([-a-], [-c-] 같은 꼴로 나옴)
32768: 이 플래그를 포함하면 지정한 플래그를 가진 폴더나 파일만 알아온다. 즉, 2만 넣으면 "일반 파일+숨김 파일"이 나오지만 2+32768 을 넣으면 "숨김 파일"만 나온다.


* 원하는 위치로 스크롤하기! LB_SETTOPINDEX
SendMessage(핸들, 407, 줄번호, 0);

지정한 줄번호의 항목이 리스트박스의 가장 처음으로 보이도록 스크롤 한다.
예를 들어, 줄번호로 5를 넣으면 5번 항목이 가장 위에 나타나도록 스크롤 된다.


* 가장 맨 위에 있는 항목은? LB_GETTOPINDEX
SendMessage(핸들, 398, 0, 0);

가장 맨 위로 보여지는 항목의 줄번호를 알려준다.


* 커서 위치의 항목은 무엇일까? LB_ITEMFROMPOINT
SendMessage(핸들, 425, 0, 좌표);

리스트박스 기준의 x, y 좌표를 넣으면 그 위치의 항목의 줄번호를 알려준다.
컬럼이 설정되어 있어도 문제 없고, 스크롤 되어 있어도 문제 없다.

좌표는 다음과 같이 만든다.
좌표 := X + shL(Y, 16);

박종훈   2006-05-27 PM 7:58:23  
와우! 정말 유용한 팁이에요 ^^..
손상진   2006-05-28 AM 11:56:15  
일단 스크랩! 이죠 ㅋ
박종훈   2006-05-28 PM 12:03:44  
^^ㅋ
우유중독   2006-06-21 PM 9:55:27  
와우~
김길남   2007-01-12 PM 2:55:31  
몰라도 스크랩 해야 할듯..
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
342
   [창조 V1.1a 16p] DB관련 명령어 중 도움말 없는 명령어와 숨...
바람 2023/02/03  308
341
   창조에도 goto문이 존재했었습니다.
바람 2018/01/05  2507
340
   메뉴제목 깔끔하게 사용하기
바람 2018/01/05  2288
339
   [창조 1.0] 팝업메뉴 사용 시 '제어'와 '보이기' 사용
바람 2018/01/05  2577
338
   [창조 1.0] 0.9b 대비 반복문 속도 향상.
바람 2018/01/05  2230
337
   [창조 1.0] '폴더선택창보여'와 '폴더선택창보여줘'의 차이.
바람 2018/01/05  2489
336
   [창조 1.0] 'ㅎ메모'의 '문자찾아'
바람 2018/01/05  2557
335
   관리자 권한이 포함 된 manifest
바람 2018/01/05  2197
334
   여러개의 DLL 사용 시 사용자함수 충돌 피하기
바람 2017/11/21  2208
333
   32비트 프로그램으로 64비트 윈도우의 'Redirection' 폴더 제...
바람 2017/10/18  2471
332
   '끝내' 쓸 때 유의할 점
성인e 2015/09/09  3072
331
   shr, 소반올림, bAND, % 시간 비교
성인e 2013/07/25  4532
330
   곱하기 버그 [2]
성인e 2013/07/07  5515
329
   작업 중 필요해서 만든 문자열내에서 서열 위치찾기 함수.
바람 2012/12/08  4031
328
     [re] 작업 중 필요해서 만든 문자열내에서 서열 위치찾기 함수.
바람 2017/10/18  2157
327
   'ㅎ메모' 문자찾아 최종.
바람 2012/11/11  5038
326
   "ㅎ리스트박스" 다중선택 처리
지상현 2012/01/26  5313
325
   배경을 다룰 때 유의할 점.
바람 2012/01/10  5508
324
   사용자함수 버그 관련 나름 사용중인 해법.
바람 2012/01/10  4709
323
   '사용자함수' 불러올 때 버그
지상현 2012/01/04  4441
322
   'ㅎ메모'의 문자찾아 속도 비교 2탄.[2011.12.20 12:45 내용... [1]
바람 2011/12/20  4626
321
     [re] 마지막 부분에서 속도 느려짐 해결.
바람 2012/01/10  4424
320
     문자함수 사용하는 방법 추가 [1]
지상현 2011/12/22  4890
319
   ㅎ메모의 64k 제한..
바람 2011/11/19  5507
318
     [re] ㅎ메모의 64k 제한..
바람 2017/10/19  2516
LIST ALL   1 [2][3][4][5][6][7][8][9][10]..[14] 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이희철
로그인