C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[2617] Re:이미지리스트에서 동적으로 그림을 추가하는 방법과...
박지훈.임프 [cbuilder] 4421 읽음    2000-01-04 00:00
: 이미지리스트에서 동적으로 그림을 추가하는 방법과 그 추가한 이미지를 리스트뷰에 나타나게 하고 싶습니다.
:
: 즉, 어떤 폴더를 선택하면 거기에 있는 이미지 파일을 이미지 리스트에 추가해서
: 그 추가한 이미지를 리스트뷰에 나타나게 하고 싶습니다.
:
: 그럼 좋은 하루 되세요~



임펠리테리입니다.

이미지리스트에 동적으로 그림을 추가하기 위한 용도로 세가지 메소드가 준비되어 있습니다.

비트맵 파일을 추가하기 위해서는 Add()나 AddMasked() 메소드를 사용합니다. Add() 함수엔
두개의 인자가 있는데, 첫인자로는 추가할 TBitmap 포인터를 넘겨주면 됩니다. 두번째 인자는
마스크를 사용할 경우만 넘겨주면 되는데, 쉽게 생각해서 배경처리를 해주기 위해서입니다.
만약 마스크를 사용하지 않을 경우라면 두번째인자는 NULL을 넘겨주면 됩니다.
Add()와는 달리, AddMasked() 함수는 마스크로서 비트맵이미지가 아니라 특정 컬러를 선택하는
함수입니다. 넘겨준 비트맵에서 두번째 인자인 색깔로 되어있는 부분은 투명하게, 즉 마스킹되어
나타납니다.

아이콘을 추가하려면 AddIcon() 메소드를 사용합니다. 이 함수는 추가할 아이콘을 가지는 TIcon
포인터 하나만을 인자로 받습니다.

마지막 한가지는 AddImages()로서, 기존의 이미지리스트의 이미지를 몽땅 추가하는 함수입니다.

AddImages()를 제외한 이미지 추가 함수들은 공통적으로 추가한 이미지의 인덱스를 리턴합니다.

이미지리스트에 추가한 이미지가 리스트뷰의 아이템의 아이콘으로 나오기 위해서는 TListItem의
ImageIndex 프로퍼티를 이미지리스트에서 지정하려는 이미지의 인덱스로 설정하면 됩니다.
그러므로 이미지리스트의 Add~()류의 함수들로부터 리턴받은 값을 그대로 넣어주면 되죠.
예를 들어,

int ImIndex = ImageList1->AddIcon(Application->Icon);
...
ListItem = ListView->Items->Add();
ListItem->Caption = "새로 추가한 아이템";
ListItem->ImageIndex = ImIndex;

이렇게 하면 어플리케이션의 아이콘이 리스트뷰에 추가됩니다.

그럼 참고하시길...

+ -

관련 글 리스트
2615 이미지리스트에서 동적으로 그림을 추가하는 방법과... 서영재 4084 2000/01/04
2617     Re:이미지리스트에서 동적으로 그림을 추가하는 방법과... 박지훈.임프 4421 2000/01/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.