|
임펠리테리입니다.
MDI로 하겠다고 하셨으니, 화면 구성이라고 까지 할 게 없네요.
MDI는 너무나 폐쇄적인 UI라서, 프로그래머가 관여할 부분이 많지 않습니다.
사용자가 이렇게 저렇게 MDI 차일드들을 배치해버리면 끝이니까요.
그보다는.. 어케 MDI 차일드 폼들을 관리할 것인가가 더 중요하죠.
폼들을 동적으로 생성할 것이냐 정적으로 생성해놓을 것이냐가 중요한데, 디비 관련 프로그래밍이니 기본적으로 폼이 아주 많을 거라고 간주하죠.
그렇다면 동적으로 생성하는 편이 낫겠죠. 정적으로 생성할 경우 리소스를 많이 차지할테니까요.
이때 생성된 폼객체를 저장할 포인터는...
MDI 차일드 폼의 소스에 기본으로 있는 폼객체 포인터(예를 들어, 폼 클래스 이름이 TForm1일 경우 cpp 파일에 보시면 TForm1 *Form1; 이라는 선언이 있습니다.)를 활용하는 것이 좋겠군요.
한 폼에서 작업하다가 다른 폼을 띄워야 할 경우...
그 폼의 포인터를 검사하여 NULL이면 새로 생성하고, NULL이 아니면 활성화시켜서 화면에서 앞으로 나오게 하고. BringToFront() 이던가 함수를 쓰면 됩니다.
(MDI 차일드가 파괴될 때마다 그 포인터 값을 NULL로 설정하는 코드가 있어야겠죠.)
그럼 이만...
묵선 님이 쓰신 글 :
: 데이터베이스와 연동된 관리 프로그램의 사용자 인터페이스를 만들고 싶습니다.
: 제가 본 것들의 대부분이 SDI형태를 바탕으로 해서 다른 작을 하고 싶으면 새로운 폼을 뛰우는 형태로 작업하는 화면이 대부분이었습니다.
:
: 제가 하고 싶은 형태는 mdi형태로 작업형태가 달라지면 메인 폼 내부에서다른 화면으로 전환되도록 하고 싶습니다.
:
: 가능하다면 스크린 샷과 어떻게 하는지 화면 구성 방법론에 대한 간단한 설명을 듣고 싶습니다.
: 스크린 샷은 무리라고 보는데, 방법에 대한 간단한(?) 설명을 부탁드립니다.
:
: 읽어주셔서 감사합니다.
: 행복한 하루 되시길 바랍니다.
|