Partilhar via


CPrintDialog::GetDefaults

Recupera os padrões de dispositivo da impressora padrão sem exibir uma caixa de diálogo.

BOOL GetDefaults( );

Valor de retorno

Diferente de zero se a função foi bem-sucedida; caso contrário, 0.

Comentários

Os valores recuperados são colocados no m_pd estrutura.

Em alguns casos, uma telefonar para essa função chamará o Construtor for CPrintDialog com bPrintSetupOnly conjunto para FALSE.Nesses casos, uma impressora DC e hDevNames and hDevMode (dois identificadores localizados no m_pd membro de dados) são alocados automaticamente.

Se o construtor para CPrintDialog foi chamado com bPrintSetupOnly conjunto para FALSE, essa função não só retornará hDevNames and hDevMode (localizada em m_pd.hDevNames and m_pd.hDevMode) para o chamador, mas também retornará uma impressora DC em m_pd.hDC.É responsabilidade do telefonar er para excluir a impressora DC e telefonar o Windows GlobalFree função alças quando tiver terminado com a CPrintDialog objeto.

Exemplo

Este fragmento de código obtém o contexto de dispositivo da impressora padrão e relatórios para o usuário a resolução da impressora em pontos por mover-se pouco a pouco.(Este atributo de recursos da impressora é considerado sistema autônomo DPI.)

CPrintDialog dlg(FALSE);

if (!dlg.GetDefaults())
{
   AfxMessageBox(_T("You have no default printer!"));
}
else
{
   // attach to the DC we were given
   CDC dc;
   dc.Attach(dlg.m_pd.hDC);

   // ask for the measurements
   int nHorz = dc.GetDeviceCaps(LOGPIXELSX);
   int nVert = dc.GetDeviceCaps(LOGPIXELSY);

   // almost always the same in both directions, but sometimes not!
   CString str;
   if (nHorz == nVert)
   {
      str.Format(_T("Your printer supports %d pixels per inch"), nHorz);
   }
   else
   {
      str.Format(_T("Your printer supports %d pixels per inch ")
         _T("horizontal resolution, and %d pixels per inch vertical ")
         _T("resolution"), nHorz, nVert);
   }

   // tell the user
   AfxMessageBox(str);

   // Note: no need to call Detach() because we want the CDC destructor
   // to call FreeDC() on the DC we borrowed from the common dialog
}

Requisitos

Cabeçalho: afxdlgs.h

Consulte também

Referência

Classe CPrintDialog

Gráfico de hierarquia

CPrintDialog::m_pd

CPrintDialog::GetDeviceName

CPrintDialog::GetDriverName

CPrintDialog::GetPortName

Outros recursos

CPrintDialog membros