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
[7702] Re:프린터 등록정보 보는 방법?
박지훈.임프 [cbuilder] 2021 읽음    2001-05-23 11:58
임펠리테리입니다.

간단한 예제를 만들었습니다.
새 프로젝트를 열어서 메인폼에 리스트박스 하나와 버튼 두개를 놓습니다.
그리고 첫번째 버튼의 OnClick 핸들러에 다음과 같이 코딩합니다.

#include <Printers.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    ListBox1->Items->Assign(Printer()->Printers);
}

두번째 버튼의 OnClick 핸들러는 다음과 같이... (이 부분이 원하시는 부분입니다.)

void __fastcall TForm1::Button2Click(TObject *Sender)
{
    HANDLE hPrinter;
    if(OpenPrinter(ListBox1->Items->Strings[ListBox1->ItemIndex].c_str(), &hPrinter, NULL) != 0)
    {
        if(PrinterProperties(Handle, hPrinter)== false)
            ShowMessage(SysErrorMessage(GetLastError()));
        ClosePrinter(hPrinter);
    }
}

아시겠지만, 버튼1을 누르면 현재 시스템에 드라이버가 설치된 모든 프린터들의 이름이 리스트박스에 나열되지요.
그중 하나를 선택하신 후 버튼2를 누르면 프린터 등록정보가 뜰 겁니다.

그럼 이만...


정재룡.구보 님이 쓰신 글 :
: 제가 프린트 대화상자를 컴포넌트로는 힘들어서...
: 직접 만들고 있는데...
:
: 보통 프린트 대화상자 보면
: 콤보박스에 프린트 이름이 나오고 그옆에 버튼이
: 등록정보 버튼인데..
:
: 그 등록정보 버튼을 구현하려고 하는데염...
: API에 보니깐...
:
: BOOL PrinterProperties(
:
:     HWND hWnd,    // handle of parent window
:     HANDLE hPrinter     // handle of printer object
:    );
:
: 이 함수가 등록정보 대화상자를 열어주는 함수인데...
: 델파이에는...OpenPrinterProperties()가 있는거 같더만...--;
: 빌더에는 없는거 같더군여...
:
: 암튼 위에 함수를 써서 사용하니 계속 대화상자가 오픈이 안되어서..
: 이렇게 질문을 드립니다.
:
: 사용할때..hWnd는 폼의 핸들을 넣었고, hPrinter에는 Printer의..
: 핸들을 넣었습니다...그러면 되어야하는게 아닌가염?..냠...
:
: 답변 부탁드립니다..
:
: 그럼 이만.

+ -

관련 글 리스트
7644 프린터 등록정보 보는 방법? 정재룡.구보 1737 2001/05/21
7702     Re:프린터 등록정보 보는 방법? 박지훈.임프 2021 2001/05/23
7733         Re:Re:프린터 등록정보 보는 방법? 정재룡.구보 2388 2001/05/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.