170 likes | 385 Views
11 장 MDI 와 멀티미디어. MDI. 단일 문서 인터페이스 (SDI, Single Document Interface) 윈도에 있는 메모장이나 워드 패드와 같이 단지 하나의 폼으로 이루어져 있는 프로그램 다중 문서 인터페이스 (MDI, Multiple Document Interface) 하나의 폼 안에 여러 폼을 포함하며 개별 창마다 다른 문서를 동시에 작업할 수 있는 형태의 프로그램. 폼 종류에 따른 아이콘 모양. MDI. MDI 응용에서 각각의 폼을 자식 폼 ( 또는 하위 폼 ) 이라 한다
E N D
MDI • 단일 문서 인터페이스(SDI, Single Document Interface) • 윈도에 있는 메모장이나 워드 패드와 같이 단지 하나의 폼으로 이루어져 있는 프로그램 • 다중 문서 인터페이스(MDI, Multiple Document Interface) • 하나의 폼 안에 여러 폼을 포함하며 개별 창마다 다른 문서를 동시에 작업할 수 있는 형태의 프로그램
MDI • MDI 응용에서 각각의 폼을 자식 폼(또는 하위 폼) 이라 한다 • 자식 폼을 포함하고 있는 폼을 부모 폼(또는 MDI폼)이라고 한다. • 자식 폼은 일반 폼과 동일하나, 일반폼의 경우에는 MDIChild 속성이 False지만, 자식 폼의 경우에는 True값을 갖는다. • MDI 폼 생성 • [프로젝트]-[MDI 추가] • 한 프로젝트에서는 반드시 하나의 MDI 폼만 사용할 수 있다.
예제 1 MDI 폼
예제 1 • MDIForm1 위에서 마우스 오른쪽 버튼 – [메뉴 편집기]
예제 1 • 모듈 변수의 명시적 선언 요구 프로젝트 내 모든 폼에서 공유할 수 있도록 전역 변수를 선언
예제 1 • 자식 폼 [새파일]메뉴를 선택하여 자식폼 생성시 자식 폼의 캡션 설정 텍스트박스 시작위치 자식 폼의 배경색을 Rnd 함수를 사용해서 무작위로 설정 자식폼 자식폼에 있는 텍스트 박스의 크기를 폼의 크기와 동일하게 지정
예제 1 • 폼-[파일] 메뉴 New 키워드는 chdForm 폼 개체의 새 인스턴스를 생성 [파일]-[닫기] 메뉴가 선택되면 실행될 이벤트 프로시저 현재 활성화된 자식폼을 닫음 If문을 사용하여 활성화된 자식 폼이 있을 경우에만 Unload메서드 호출
예제 1 • 폼-[편집] 메뉴 Clear 메서드를 호출하여 데이터 삭제 활성화된 자식 폼의 텍스트 박스에서 선택된 텍스트를 SetText 메서드 이용하여 크립보드로 보냄 클립보드로 보내진 자식폼의 텍스트 박스에서 선택된 텍스트를 지움 [편집]-[복사] 메뉴 실행 시 [편집]-[붙여넣기] 메뉴 실행 시
예제 1 • 폼-[창] 메뉴
예제 1 자식폼 정렬 전 수직바둑판식 정렬 잘라내기 직전의 모습 붙이기 직후의 모습
MCI(Multimedia Control Interface) 장치들의 멀티미디어 파일을 기록하고 재생을 관리하는 컨트롤 • 버튼의 활성화 및 표시 여부를 결정 : 각 버튼의 이름 뒤에 Enabled와 Visible이 추가된 속성을 이용 • MCI 컨트롤
예제 2 • [파일열기] 버튼을 눌러 연주할 파일을 선택할 수 있는 대화상자를 표시하여 원하는 소리 파일(*.wav)을 선택하고 재생하는 프로그램을 작성해 보자
예제 2 공통 대화상자의 [열기] 속성 미디어 장치의 초기 속성값 설정 Form_Unload 프로시저에서 Command속성을 이용하여 열린 MCI 장치를 닫음