|
질문 내용을 정확하게 이해하기가 힘들군요.
동적생성된 frame 이라는것이 TFrame 에 의하여 만들어 진다는 것인지, 아니면 TForm 창에 준비된
TFrame 을 올려서, 즉 listbox 가 올려져 있는 form 을 말씀하시는 것인지 모르겠군요.
A,B 의 thread 가 있으며, 이들이 패킷 통신을 하는 것이고, 패킷 통신을 하면서 나오는 어떠한 메시지들을
listbox 에 보여지게 하기 위한 기능을 구현하시려 생각 됩니다. 즉 통신 상태를 모니터링 하는 창이 있어서
이 창에 상태를 메시지로 뿌리고 싶은 것이 될 듯 합니다.
방법이야 여러가지가 있겠죠.
1. 모니터링 하는 창에 메시지를 넣는 함수를 하나 만들어 이 함수를 통하여 정보를 보내도록 하고
이 함수에서 해당 form (메시지 출력창)이 생성이 되었는지 검사만 하면 될듯
2. Virtual class 만들어 처리기 만들어 스레드에서는 이 처리기로 메시지를 보내고, 실제로 이 가상 class를 상속받아
실제로 처리하는 처리기를 연결시켜 처리할 수도 있고요.
3. 간단한 코드면, 스레드에서 직접 모니터링 폼에 직접 메시지를 출력(syncronize 해야 겠죠?) 하는 방식으로 처리
하는 것도 있을 수 있겠죠.
위의 내용이 아니고 , 모니터링 폼이 생성이 되었는지 그렇지 않은지를 알기위한 것이라면,
해당 form 의 메모리 할당상태를 보면 되겠죠. 아니면 global 로 flag 를 하나 두어서 처리해도 되고요.
물어보신 내용을 잘 이해를 못해서, 일단 짐작해서 적습니다.
수고하세요.
로더 님이 쓰신 글 :
: 메인 화면에서
:
: A 쓰레드 : 패킷 받기 전용 (데이타수신)
: B 쓰레드 : 패킷 보내기 전용 (폴링용)
:
: 이 동작을 하고 있고 동적생성된(미리 만들어 놓은, 메뉴 버튼으로 동작) frame 폼(C) 의 ListBox에서
:
: 위 쓰레드들의 동작 상황을 표시해 주려고 합니다.
:
: 근데 이 C 라는 녀석이 필요에 의해서만 불러지기 때문에 메인에서 이녀석을
:
: 실시간으로 생성이 되어 있는지 여부를 판단을 해야 할 것 같습니다.
:
: 기존에 있는 프로그램을 뜯어 보니 동적으로 생성하는게 아니고
:
: 메인 시작시 일반 폼으로 미리 불러놓고 숨겨놓고 있다가 보여주는 방식으로 구현되었습니다.
:
: 테스트를 많이 못하고 진행 하였던 터라 이미 다른 부분들이 거의 완성이 되서
:
: 제가 처음 생각했던 동적 생성으로 해결책을 한번 찾아보려고 합니다.
:
: 1. 동적 생성된 Frame폼에 존재 유무 판단 방법
:
: 고수님들의 많은 조언 부탁드립니다.!!
|