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
[74977] Re:component 배열 형식으로 구현 질문입니다.
김시환 [godson2] 3083 읽음    2018-06-22 09:44
TImage 컴포넌트를 정적으로 하느냐 동적으로 하느냐에 따라 조금 코드가 변할수는 있을텐데 제가 늘 사용하던 컴포넌트 배열을 참고 삼아 알려 드리겠습니다.

일단 아래 코드 중심으로 설명을 드리면

class TLayerForm : public TForm
: {
: __published:    // IDE-managed Component
:
:   TRzGroupBox *GroupList[10];             
:   TImage *GImage[10][1000];
}

void __fastcall TLayerForm ::FormCreate(TObject *Sender)   
{
    GImage[0][0] = image1 ;     // 이미지가 정적으로 고정되어 있을 경우 모든 이미지를 다 배열에 할당합니다.
    GImage[0][1] = image2 ;     // 숫자적으로 보면 꽤 노가다가 되겠네요..
            :
            :
    GImage[9][999] = imageN ;
}

GImage[group][item]->Picture->LoadFromFile("image.bmp") ;     // 이런식으로 사용하시면 됩니다.

이미지가 동적으로 생성될 경우는 위의 폼생성 이벤트에서 처럼 미리 컴포넌트를 등록하지 않고
생성할때 마다 등록을 해 주셔야 하겠지요.. 워낙 수가 많으니 동적생성할 경우는 관리를 잘하셔야 하겠지요..

바루 님이 쓰신 글 :
: 현재 코드
:
:
: class TLayerForm : public TForm
: {
: __published:	// IDE-managed Component
: 
:   TRzGroupBox *Group1; 
:   TImage *G1Image1;
:   TImage *G1Image2;
:   TImage *G1Image3;
:   TImage *G1Image4;
: //....(이하생략)
: 

:
: 바꾼 코드
:
:
: class TLayerForm : public TForm
: {
: __published:	// IDE-managed Component
: 
:   TRzGroupBox *GroupList[10];              
:   TImage ***GImage; //([각 그룹 번호][그룹 내의 아이템 번호] -> 그룹 1의 5번째 아이템 [0][4])
: 

:
:
: 카테고리를 만들고 각 카테고리(TRzGroupBox) 안에 이미지(TImage) 아이템들을 넣는 것을 구현했습니다.
: 현재는 카테고리 개수를 10개, 각 카테고리당 아이템 최대 개수를 10개로 지정하여 component들을 하드코딩 되어 있는 상태입니다.
: 여기서 아이템을 1000개 이상 넣어야하는 상황이 발생해서 현재 하드코딩 되어 있는 부분을
: 다중 포인터나 vector를 이용하여 대체하는 방법을 찾았으나 component를 다중 포인터로 사용할 수가 없더라구요.
:
: 그래서 어떤 방법으로 다른 방법으로 구현 할 수 있는지 조언 부탁들립니다.
:
: 현재 사용하고 있는 컴파일러는 c++builder6입니다.
:

+ -

관련 글 리스트
74974 component 배열 형식으로 구현 질문입니다. 바루 3048 2018/06/20
74977     Re:component 배열 형식으로 구현 질문입니다. 김시환 3083 2018/06/22
74979         Re:Re:component 배열 형식으로 구현 질문입니다. 바루 3025 2018/06/22
74981             Re:Re:Re:component 배열 형식으로 구현 질문입니다. 김시환 3049 2018/06/25
74980             Re:Re:Re:component 배열 형식으로 구현 질문입니다. 김시환 2930 2018/06/25
74982                 Re:Re:Re:Re:component 배열 형식으로 구현 질문입니다. 바루 3031 2018/06/27
75053                     Re:Re:Re:Re:Re:component 배열 형식으로 구현 질문입니다. 김시환 2978 2018/08/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.