해더파일에는 포인터만 선언한 것이지 새로운 TFrame의 객체를 선언한 것이 아닙니다.
포인터 변수에 TFrame1의 객체를 생성해서 포인팅만 해준 것이기 때문에
"축구" 님께서 만들어 두신 TFrame1을 사용하는 것입니다. ~
축구 님이 쓰신 글 :
: 음 근데 저렇게 하면 이미 만들어논 프레임이 아닌 완전 새 프레임을 쓰는게 아닌지요?
:
:
: 송신영 님이 쓰신 글 :
: : 음.. C/C++ 공부를 좀더 하셔야 할듯합니다.
: : 너무 게시판의 질답으로만 문제 해결하려면 자신의 지식이 잘 안됩니다.
: : 좋은 책 하나 선정해서 열공하셔야 나중에 살이되고 피가됩니다.
: :
: :
: : // 해더 파일에 아래와 같이 선언하면됩니다.
: : TFrame * Frame[5];
: :
: :
: :
: : 축구 님이 쓰신 글 :
: : : 음 저걸 쓰려면 만들어논 프레임 Name를 어떻게 바꿔줘야 하나요?
: : : Frame로 바꾸니까 에러나고 Frame[]로 바꿔도 에러나고
: : : 그냥[i]이것만 갔다 붙여도 에러나고 ㅠㅠ
: : :
: : : 송신영 님이 쓰신 글 :
: : : : 포인터 배열을 사용하세요.
: : : : Frame[i] = new TFrame1(Panel1);
: : : :
: : : : 축구 님이 쓰신 글 :
: : : : :
: : : : : for(int i = 0; i < 5; i++)
: : : : : {
: : : : : Frame1 = new TFrame1(Panel1);
: : : : : Frame1->Parent = Panel1;
: : : : : Frame1->Align = alTop;
: : : : :
: : : : : Frame1->Memo1->Lines->Add("asdf");
: : : : : }
: : : : :
: : : : :
: : : : : 이미 만들어논 프레임을 5개 생성하는건데
: : : : : 저걸 5개 다 만들라면 이름을 바꿔줘야 하는데 어떻게 바꿀지 모르겠어요
: : : : :
: : : : : 이름옆에 +연산자를 쓸수도 없고.....
|