A estrutura PRINTDLG contém informações PrintDlg função usa para inicializar a caixa de diálogo Imprimir . Depois que o usuário fecha a caixa de diálogo, o sistema usa essa estrutura para retornar informações sobre seleções do usuário.
typedef struct tagPD {/ / pd DWORD lStructSize;
HWND hwndOwner;
MANIPULAR hDevMode;
MANIPULAR hDevNames;
HDC hDC;
DWORD Sinalizadores;
PALAVRA nFromPage;
PALAVRA nToPage;
PALAVRA nMinPage;
PALAVRA nMaxPage;
PALAVRA nCopies;
HINSTANCE hInstance;
DWORD lCustData;
LPPRINTHOOKPROC lpfnPrintHook;
LPSETUPHOOKPROC lpfnSetupHook;
LPCTSTR lpPrintTemplateName;
LPCTSTR lpSetupTemplateName;
Lidar com hPrintTemplate;
Lidar com hSetupTemplate;
} PRINTDLG
Se hDevMode é NULL na entrada, PrintDlg aloca memória para a estrutura DEVMODE , inicializa seus membros para indicar a entrada do usuário e retorna um identificador que identifica-lo.
Se o driver de dispositivo para a impressora especificada não suporta modos de dispositivo estendido, hDevMode é nulo quando PrintDlg retorna.
Se o nome do dispositivo (especificado pelo dmDeviceName membro do estrutura DEVMODE ) não aparecem na secção [devices] do WIN.INI, PrintDlg retorna um erro.
Para obter mais informações sobre o hDevMode e hDevNames Membros, consulte a seção de comentários no final deste tópico.
O hDevNames membro pode ser NULL, nesse maiúscminúsc, PrintDlg aloca memória para a estrutura DEVNAMES , inicializa seus membros para indicar o usuário entrada, e retorna um identificador que identifica-lo.
Para obter mais informações sobre o hDevMode e hDevNames Membros, consulte a seção de comentários no final deste tópico.
| PD_ALLPAGES | |
| A bandeira de padrão que indica que o botão de rádio tudo inicialmente é seleccionado. Este sinalizador é usado como um espaço reservado para indicar que não estão especificados os sinalizadores PD_PAGENUMS e PD_SELECTION. | |
| PD_COLLATE | |
| Se este sinalizador estiver definido, a caixa de verificação Agrupar está marcada. Se este sinalizador é definido quando a função PrintDlg retorna, o aplicativo deve simular o agrupamento de várias cópias. Para obter mais informações, consulte a descrição da bandeira PD_USEDEVMODECOPIESANDCOLLATE. |
|
| PD_DISABLEPRINTTOFILE | |
| Desativa a caixa de seleção Imprimir em arquivo. | |
| PD_ENABLEPRINTHOOK | |
| Permite que o procedimento gancho especificado na lpfnPrintHook membro. Isso permite que o procedimento de gancho de caixa de diálogo Imprimir. | |
| PD_ENABLEPRINTTEMPLATE | |
| Indica que o hInstance e lpPrintTemplateName Membros especificar uma substituição para o modelo de caixa de diálogo de impressão padrão. | |
| PD_ENABLEPRINTTEMPLATEHANDLE | |
| Indica que o hPrintTemplate membro identifica um bloco dados que contém um modelo caixa diálogo pré-carregadas. Este modelo substitui o modelo padrão para a caixa de diálogo Imprimir . O sistema ignora o lpPrintTemplateName membro se este sinalizador for especificado. | |
| PD_ENABLESETUPHOOK | |
| Permite que o procedimento gancho especificado na lpfnSetupHook membro. Isso permite que o procedimento de gancho de caixa de diálogo Configurar impressão. | |
| PD_ENABLESETUPTEMPLATE | |
| Indica que o hInstance e lpSetupTemplateName Membros especificar uma substituição para o modelo de caixa de diálogo deconfiguração de impressãopadrão . | |
| PD_ENABLESETUPTEMPLATEHANDLE | |
| Indica que o hSetupTemplate membro identifica um bloco dados que contém um modelo caixa diálogo pré-carregadas. Este modelo substitui o modelo padrão para a caixa de diálogo Configurar impressão . O sistema ignora o lpSetupTemplateName membro se este sinalizador for especificado. | |
| PD_HIDEPRINTTOFILE | |
| Oculta a caixa de seleção Imprimir em arquivo. | |
| PD_NONETWORKBUTTON | |
| Oculta e desativa o botão ' rede '. | |
| PD_NOPAGENUMS | |
| Desabilita o botão de opção páginas e os controles associados editar. | |
| PD_NOSELECTION | |
| Desabilita o botão de opção de seleção. | |
| PD_NOWARNING | |
| Impede que a mensagem de aviso seja exibida quando não há nenhuma impressora padrão. | |
| PD_PAGENUMS | |
| Se este sinalizador estiver definido, o botão de opção páginas estiver selecionado. Se este sinalizador é definido quando a função PrintDlg retorna, o nFromPage e nFromPage Membros indicam o início e fim de páginas especificadas pelo usuário. |
|
| PD_PRINTSETUP | |
| Faz com que o sistema exiba a caixa de diálogo Configurar impressão , em vez de caixa de diálogo Imprimir. | |
| PD_PRINTTOFILE | |
| Se este sinalizador estiver definido, a caixa de seleção Imprimir em arquivo é selecionada. Se este sinalizador é definido quando a função PrintDlg retorna, o deslocamento indicado pelo membro wOutputOffset da estrutura DEVNAMES contém a Cadeia de caracteres "arquivo:". Quando você chamar o StartDoc função para iniciar a operação de impressão, especificar este "arquivo:" Cadeia de caracteres in a lpszOutput membro do DOCINFO estrutura. Especificar essa Cadeia de caracteres faz com que o subsistema de impressão consultar o usuário para o nome do arquivo de saída. |
|
| PD_RETURNDC | |
| Faz com que PrintDlg para retornar um contexto para dispositivo combinando as seleções feitas na caixa de diálogo pelo usuário. O contexto de dispositivo é retornado na hDC. | |
| PD_RETURNDEFAULT | |
| Se este sinalizador estiver definido, a função PrintDlg não exibe a caixa de diálogo. Em vez disso, ele define o hDevNames e hDevMode Membros para alças para DEVMODE de DEVNAMES estruturas que são inicializadas para a impressora padrão de sistema. Ambos hDevNames e hDevMode devem ser NULL ou PrintDlg retorna um erro. Se a impressora padrão de sistema é suportada por um driver de impressora antigo (anterior ao Windows versão 3.0), apenas hDevNames é retornado; hDevMode é NULL. |
|
| PD_RETURNIC | |
| Semelhante para o Sinalizar de PD_RETURNDC, exceto esse sinalizador retorna um contexto de informações ao invés de um contexto de dispositivo. Se nem PD_RETURNDC PD_RETURNIC for especificado, o hDC é indefinida na saída. | |
| PD_SELECTION | |
| Se este sinalizador estiver definido, o botão de opção de seleção estiver selecionado. Se nem o PD_PAGENUMS nem PD_SELECTION é definida, o botão de opção todos estiver selecionado. |
|
| PD_SHOWHELP | |
| Faz com que a caixa de diálogo Exibir no botão Ajuda . O hwndOwner membro deve especificar a janela para receber a HELPMSGSTRING registadas mensagens de caixa de diálogo envia quando o usuário clica no botão Ajuda. | |
| PD_USEDEVMODECOPIES | |
| Mesmo que PD_USEDEVMODECOPIESANDCOLLATE | |
| PD_USEDEVMODECOPIESANDCOLLATE | |
| Este sinalizador indica se seu aplicativo suporta várias cópias e agrupamento. Defina esse sinalizador na entrada para indicar que seu aplicativo não oferece suporte a várias cópias e agrupamento. Neste caso, o nCopies membro da estrutura PRINTDLG sempre retorna 1 e PD_COLLATE nunca é definido na sinalizadores membro. Se este sinalizador não estiver definido, o aplicativo é responsável por imprimir e confronto de várias cópias. Neste caso, o nCopies membro da estrutura PRINTDLG indica o número de cópias que o usuário deseja imprimir, e o sinalizador PD_COLLATE in o sinalizadores membro indica se o usuário quer agrupamento. Independentemente de saber se este sinalizador estiver definido, um aplicativo pode determinar a partir de nCopies e PD_COLLATE quantas cópias para processar e se deseja imprimi-las agrupadas. Se este sinalizador estiver definido e o driver de impressora não oferece suporte a várias cópias, o Controlarar de Editar de cópias é desativado. Da mesma forma, se este sinalizador estiver definido e o driver de impressora não oferece suporte a agrupamento, a caixa de verificação Agrupar está desativada. Os membros de dmCopies e dmCollate o DEVMODE estrutura contêm as cópias e agrupar informações usadas pelo driver de impressora. Se este sinalizador estiver definido e o driver de impressora oferece suporte a várias cópias, o membro dmCopies indica o número de cópias solicitadas pelo usuário. Se este sinalizador estiver definido e o driver de impressora oferece suporte a agrupamento, o dmCollate membro da estrutura DEVMODE indica se o usuário quer agrupamento. Se este sinalizador não estiver definido, o membro de dmCopies sempre retorna 1, e o membro de dmCollate é sempre zero. |
|
Quando PrintDlg retorna, nFromPage é a página inicial especificada pelo usuário. Se o botão de opção páginas estiver selecionado quando o usuário clica a OK botão, PrintDlg define o PD_PAGENUMS sinalizador e não retorna até que o usuário insere um valor inicial de página que está dentro o mínimo de intervalo de páginas máximo.
Windows 95: Se o valor de entrada para nFromPage ou nToPage está fora do intervalo especificado por nMinPage e nMaxPage, PrintDlg retorna um erro.
Windows NT: Se a entrada de valor para nFromPage ou nToPage está fora do intervalo de mínimo/máximo, PrintDlg retorna um erro somente se o sinalizador PD_PAGENUMS for especificada; caso contrário, exibe a caixa de diálogo, mas altera o valor fora do intervalo para o valor mínimo ou máximo.
Quando PrintDlg retorna, nToPage é a página final especificada pelo usuário. Se o botão de opção páginas estiver seleccionado quando o uso clica a OK botão, PrintDlg define o PD_PAGENUMS sinalizador e não retorna até que o usuário insere um valor final de página que está dentro o mínimo de intervalo de páginas máximo.
Quando você chamar a função PrintDlg , certifique-se de que o wDeviceOffset membro da estrutura DEVNAMES é idêntica ao dmDeviceName membro do a estrutura de DEVMODE . Se esses membros não especificar a mesma impressora, PrintDlg Inicializa a caixa de diálogo usando a impressora especificada pelo membro wDeviceOffset.
Normalmente, se hDevMode e hDevNames são NULL, PrintDlg Inicializa a caixa de diálogo usando a impressora padrão atual. No entanto, se o sinalizador PD_RETURNDEFAULT é definido e hDevMode e hDevNames são NULL, PrintDlg usa o hDevNames e hDevMode Membros para retornar informações sobre a impressora padrão atual sem exibir a caixa de diálogo.
nbsp; Windows &NT: requer a versão 3.1 ou posterior.
Windows:Requer o Windows 95 ou posterior.
Windows CE:Requer versão 1.0 ou posterior.
Cabeçalho:Declaradas no winspool.h.
Unicode:Definidos como estruturas ANSI e Unicode.
Visão geral de biblioteca de caixa de diálogo comum, estruturas de caixa de diálogo comuns, CreateDC, CreateIC, PrintDlg, DEVMODE, DEVNAMES, WM_INITDIALOG