Partilhar via


CDC::SetLayout

Chamar essa função de membro para alterar o da direita para a esquerda o layout de texto e gráficos para um contexto de dispositivo, o layout padrão para culturas como árabe e hebraico.

DWORD SetLayout( 
   DWORD dwLayout  
);

Parâmetros

  • dwLayout
    Sinalizadores de layout do contexto de dispositivo e de controle de bitmap. Pode ser uma combinação dos seguintes valores.

    Valor

    Significado

    LAYOUT_BITMAPORIENTATIONPRESERVED

    Desativa qualquer reflexo para chamadas a CDC::BitBlt e a CDC::StretchBlt.

    LAYOUT_RTL

    Define o layout horizontal padrão para ser da direita para a esquerda.

    LAYOUT_LTR

    Define o layout padrão para ser a esquerda para a direita.

Valor de retorno

Se bem sucedida, o layout anterior do contexto de dispositivo.

Mal sucedido, se GDI_ERROR. Para obter informações de erro estendido, chame GetLastError.

Comentários

Normalmente, você não SetLayout faria para uma janela. Em vez de isso, você controla o layout da direita para a esquerda em uma janela definindo estilos estendidos da janela como WS_EX_RTLREADING. Um contexto de dispositivo, como uma impressora ou meta-arquivo, não herda este layout. A única maneira para definir o contexto de dispositivo para um layout da direita para a esquerda está chamando SetLayout.

Se você chamar SetLayout(LAYOUT_RTL ), SetLayout altera automaticamente o modo de mapeamento a MM_ISOTROPIC. Como resultado, uma chamada subseqüente a GetMapMode retornará MM_ISOTROPIC em vez de MM_TEXT.

Em alguns casos, como com muitos bitmaps, convém preservar o layout da esquerda para a direita. Em esses casos, processar a imagem chamando BitBlt ou StretchBlt, defina o sinalizador de controle de bitmap para dwLayout a LAYOUT_BITMAPORIENTATIONPRESERVED.

Depois que você altera o layout com o sinalizador de LAYOUT_RTL , os sinalizadores que normalmente especificam certeza ou são invertidas à esquerda. Para evitar confusão, você pode querer definir nomes alternativos para os sinalizadores padrão. Para obter uma lista de nomes alternativos sugeridos o sinalizador, consulte SetLayout em Windows SDK.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

CDC Class

Gráfico da hierarquia

CDC::GetLayout

CDC::SetMapMode