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
[17107] Re:Re:동적으로 생성된 폼에 대하여....다른 문제가 있어서...
C처럼 간결하게 [hbom] 967 읽음    2002-04-02 00:37
채팅프로그램을 만들고 있습니다...

버튼을 클릭하면 폼을 동적으로 생성하는데...
직접 버튼을 클릭해서 폼을 만들면 이상이 없습니다.
그런데 클라이언트에서 채팅메시지가 들어와서 버튼이벤트를 호출해서 만들면
프로그램이 멈춰버린것처럼 되어버립니다.
그렀다고 다운이 된건은 아니고 채팅메시지가 오면 폼에 출력이 됩니다
그러나 그외의 컨트롤이 안되네여..
그러다가 접속이 끊기면 폼이 사라지면서 프로그램이 원래대로 잘 돌아갑니다.
그래서 앞의 질문도 그것때문에 올린건데....
아직도 해결을 못하고 있네여..ㅠㅠ

폼을 동적으로 만드는곳
void __fastcall TForm6::Button2Click(TObject *Sender)
{
    Form10 = new TForm10(Application);
    Form10->Show();
}
이렇게 버튼을 누르면 별 문제 없이 폼이 생성됩니다.

다음은 버튼 이벤트를 호출하는 곳입니다..

Form6->Button2->Click();

이렇게 쓰면 폼이 생성되어지지만 다른거는 아무것도 하지 못합니다.
무엇이 문제일까요
제가 보기에는 문제가 없어 보이는데....
고수님들 조금이라도 의심되는 부분이 있으시면 꼭좀 답면좀 주세여
아니면 다른 방법이 있다면 알려주시구여...

즐프하시고 즐거운 하루 되세여..


^^ 님이 쓰신 글 :
: Windows API에서는 윈두우핸들이라는 넘을 두어 생성된 윈도우(동적, 정적)를 관리하도록 하고 있습니다. 그러나, 빌더에서는 동적으로 생성된 윈도우에 대해서는 자체적으로 관리해 주지를 않습니다. 그렇다고 전혀 접근하는 방법이 존재하지 않는 것은 아닙니다. 빌더에서는 Screen이라는 global class가 존재합니다. 이 클래스는 현재 화면과 관련된 정보를 가지고 있습니다. 자세한 내용은 Screen의 도움말을 참조하시고, 폼에 관련된 것만 말씀 드리면,
: Screen->Forms [] : 이것이 바로 현재 화면상에 떠 있는 모든 폼을 나타냅니다.
: 예를 드는 것이 설명하는데, 가장 빠를 것 같군요.
: [예1] 캡션을 이용하여 폼을 찾고 싶다면,
: Form *SearchForm (String caption)
: {
:     for (short i = 0; i < Screen->FormCount; i++ )
:     {
:         if ( String (Screen->Forms[i]->Caption) == caption )
:             return Screen->Forms [i];
:     }
:     return NULL;
: }
: [예2] 특정폼이 몇개 떠 있는지 확인하고 싶다면,
: int CountForm (String formName)
: {
:     int formCount = 0;
:     for (short i = 0; i < Screen->FormCount; i++ )
:     {
:         if ( String (Screen->Forms[i]->ClassName ()) == formName )
:             formCount++;
:     }
:     return formCount;
: }
: 이렇게 하시면 됩니다.
: 그래도 이해않되면 리플을 달아 주세요.
:
:
:
:
:
: C처럼 간결하게 님이 쓰신 글 :
: : 동적으로 생성된 폼이 여러개가 있을 경우 그것을 어떻게 구분하는지...
: : 내가 얘기하고도 넘 질문이 막연하네여....
: :
: : 그러니까 윈도우가 어떻게 그걸 구분해서 메시지를 전달하는지등등
: : 헉 너무 질문이 어렵군여... 죄송합니다.
: :

+ -

관련 글 리스트
17081 동적으로 생성된 폼에 대하여.... C처럼 간결하게 853 2002/04/01
17085     Re:동적으로 생성된 폼에 대하여.... ^^ 945 2002/04/01
17107         Re:Re:동적으로 생성된 폼에 대하여....다른 문제가 있어서... C처럼 간결하게 967 2002/04/02
17117             Re:Re:Re:동적으로 생성된 폼에 대하여....다른 문제가 있어서... ^^ 962 2002/04/02
17161                 Re:Re:Re:Re:동적으로 생성된 폼에 대하여....다른 문제가 있어서... C처럼 간결하게 1095 2002/04/03
17163                     Re:Re:Re:Re:Re:동적으로 생성된 폼에 대하여....다른 문제가 있어서... ^^ 1066 2002/04/03
17170                         고맙습니다..해결되었네여.. C처럼 간결하게 1267 2002/04/03
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.