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
[62577] Re:Re:Re:for문을 이용하여 폼 동적생성에 관한 질문
장성호 [nasilso] 1066 읽음    2010-10-04 15:50
제가 작성한 코드를 잘 보내요..
Form생성과 위치설정을 모두 한후에 ..
Form.Show를 맨마지막에 한번에 4개 모두 합니다.

//------------------------------------------
Form을 생성하면 Form위에 control까지 여러개 생성되고..
화면에 나타난 생태에서 또한 위치를 바꾸면 처리해야하것이 상당히 많습니다.

그리고 님께서는
SetBound로 위치를 바꾸면 딱 한번에 모두 바뀌는데
Left/Top/Width/Height를 각각 설정해줌으로써 4번에 걸쳐서 위치변경작업이 일어나네요

화면에 나타나지 않은 상태에서는 별 의미가 없지만..
화면에 나타난상태에서는 다릅니다.

생성과 위치변경 show하는데 시간이 걸리기 때문에..
님과 같이 코딩하면 하나씩 하나씩 나타날수 밖에 없습니다.

그럼..

공부중 님이 쓰신 글 :
: 제가 한가지 빼먹은 것이 있군요
: 저는 아래와 같이 하였습니다.
: 아래 처럼 한 이유는 폼 1과 폼2 가 있습니다.
: 폼1에 폼2를 여러개 띄우기위하여 한 작업중입니다.
: int __fastcall TForm1::Calculation(int iCount,int iDivCount)
: {
:   int iCalcul = 0;
:   if(iCount<iDivCount)
:   {
:     iCalcul = 0;
:     return iCalcul;
:   }
:   else if(iCount >= iDivCount &&iCount<(iDivCount*2))
:   {
:     iCalcul = 1;
:     return iCalcul;
:   }
:   else if(iCount >= iDivCount &&iCount<(iDivCount*3))
:   {
:     iCalcul = 2;
:     return iCalcul;
:   }
:   else if(iCount >= iDivCount &&iCount<(iDivCount*4))
:   {
:     iCalcul = 3;
:     return iCalcul;
:   }
:   else if(iCount >= iDivCount &&iCount<(iDivCount*5))
:   {
:     iCalcul = 4;
:     return iCalcul;
:   }
:   else
:   {
:     iCalcul = 5;
:     return iCalcul;
:   }
: }
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:     int iYpoint = 0;
:     for(int i = 0; i< 16;i++)
:     {
:       TForm3* Form3 = new TForm3(Owner);
:       Form3->Parent = Form1;
:       Form3->Show();
:       iYpoint = Calculation(i,4);
:       Form3->Left   = (Form1->Width/4)*(i%4);
:       Form3->Width  = (Form1->Width/4)-1;
:       Form3->Top    = (Form1->Height/4)*(iYpoint%4);
:       Form3->Height = (Form1->Height/4)-1;
:
:    }
: }
: 위와 같이 할경우 상당히 폼이 생성 될때 약간의 시간차이를 두고 생성 됩니다.
: 이시간 차를 없애고 싶습니다.

+ -

관련 글 리스트
62573 for문을 이용하여 폼 동적생성에 관한 질문 공부중 1068 2010/10/04
62574     Re:for문을 이용하여 폼 동적생성에 관한 질문 장성호 1018 2010/10/04
62576         Re:Re:for문을 이용하여 폼 동적생성에 관한 질문 공부중 859 2010/10/04
62577             Re:Re:Re:for문을 이용하여 폼 동적생성에 관한 질문 장성호 1066 2010/10/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.