인쇄 미리 보기 및 페이지 설정 버튼 만드는 방법
저자: Daniel Joe | 날짜: 2001년 11월 27일 |
비록 인터넷 익스플로러에서만 동작하긴 하지만 브라우저의 "인쇄 미리 보기"와 "페이지 설정" 메뉴를 프로그래밍적으로 실행시킬 수 있는 방법이 있다. 우선 아래 버튼을 클릭한 후 어떤 결과가 나오는지 확인해 보기 바란다. (인터넷 익스플로러 4 이상에서 동작한다.)
위 예제와 같은 결과를 얻으려면 브라우저 컨트롤에 접근할 수 있어야 한다. 이제 실제 소스 코드를 보면서 분석해 보도록 하자.
<script language="javascript"> |
위의 소스 코드에서 웹 브라우저 컨트롤에 접근하기 위해 <object> 태그를 사용하였다. 이 때 웹 브라우저 컨트롤의 고유 클래스 ID인 "8856F961-340A-11D0-A96B-00C04FD705A2"를 사용하였다. ActiveX 프로그래밍을 해본 사람이라면 이게 무엇을 의미하는지 쉽게 알 수 있겠지만 잘 모르는 사람도 이 기능을 사용하는데는 큰 문제가 없다. 다만 궁금한 사람들은 레지스트리의 HKEY_CURRENT_USER의 CLSID 부분에서 {8856F961-340A-11D0-A96B-00C04FD705A2}을 찾아보기 바란다. 이렇게 레지스트리에 등록되어 있는 고유 ID를 <object> 태그를 통해 접근함으로써 해당 컨트롤의 기능을 이용할 수 있는 것이다.
웹 브라우저 컨트롤은 ExecWB란 메쏘드를 가지고 있다. 이 메쏘드를 통하여 브라우저 메뉴를 접근할 수가 있다. ExecWb 메쏘드의 파라미터로 intOLEcmd와 intOLEparam을 사용하는데 intOLEcmd가 7이면 인쇄 미리 보기, 8이면 페이지 설정, 6이면 인쇄하기이다. 인쇄하기 경우 intOLEparam이 -1이면 대화 상자 없이 바로 인쇄를 한다. 여기서 ExecWB 메쏘드는 WebBrowser1을 통해 접근하였는데 이는 <object> 태그 안에서 웹 브라우저 컨트롤에 대한 이름으로 WebBrowser1을 사용했기 때문이다. 이 이름은 사용자가 임의로 지정해 주면 된다.
만일 인쇄하기와 관련된 전형적인 방법을 알고 싶은 사람은 다음 글을 참조 하기 바란다.
이 외에도 브라우저의 메뉴를 실행시킬 수 있는 방법으로 execCommand 메쏘드가 있는데 이와 관련된 글을 읽고 싶다면 다음 글을 참조하기 바란다.
- 브라우저의 '다른이름으로 저장' 메뉴를 실행시키는 방법
- 웹 페이지의 특정 부분만 파일로 저장하는 방법
- 사용자가 선택한 텍스트를 하이퍼링크로 변경시키는 방법
- 자바스크립트를 이용하여 문자열 복사 및 붙이기
- 사용자로 하여금 글자색을 변경하게 하는 방법
'- script' 카테고리의 다른 글
html5+css STUDY (0) | 2019.03.04 |
---|---|
클릭하면 한곳의 이미지 바뀌게 (0) | 2010.10.20 |
기초 태그 - 글자 태그(텍스트 속성) (0) | 2010.10.10 |
랜덤으로 배너 띄우고 링크 걸기 (0) | 2010.10.10 |
이미지 새창으로 띄우는것 막기 (0) | 2010.10.10 |
[flash] 검색 사이트같은 곳에서 뜨는 투명 플래시 (0) | 2010.10.10 |
[flash] 싸이언 블랙라벨 홈페이지 모니터 꽉 차게 플래시 (0) | 2010.10.10 |
[flash] 배경투명, 메뉴안보이게, 새창 (0) | 2010.10.05 |
레이어 메세지박스 (fade효과 말풍선) (0) | 2010.10.05 |
스타일시트 모음 (0) | 2010.10.05 |