次の方法で共有


CDC::SetLayout

更新 : 2007 年 11 月

デバイス コンテキストのテキストとグラフィックスを右から左へのレイアウトに変更します。このレイアウトは、アラビア語やヘブライ語文化圏での標準レイアウトです。

DWORD SetLayout(
   DWORD dwLayout 
);

パラメータ

  • dwLayout
    デバイス コンテキスト レイアウトとビットマップ制御フラグ。次の値を組み合わせて使用できます。

    説明

    LAYOUT_BITMAPORIENTATIONPRESERVED

    CDC::BitBlt の呼び出しと CDC::StretchBlt の呼び出しによる移動を無効にします。

    LAYOUT_RTL

    水平レイアウトの既定値を右から左に設定します。

    LAYOUT_LTR

    レイアウトの既定値を左から右に設定します。

戻り値

処理が正常に終了した場合は、デバイス コンテキストの直前のレイアウトを返します。

失敗した場合は GDI_ERROR を返します。拡張エラー情報を取得するには、GetLastError を呼び出します。

解説

通常、ウィンドウに対して SetLayout は呼び出しません。代わりに、WS_EX_RTLREADING などの拡張ウィンドウ スタイルを設定し、ウィンドウで右から左へのレイアウトを制御します。ただし、プリンタやメタファイルなどのデバイス コンテキストは、このレイアウトを継承しません。デバイス コンテキストに右から左へのレイアウトを設定する唯一の方法が SetLayout を呼び出すことです。

SetLayout (LAYOUT_RTL) は呼び出されると、自動的にマップ モードを MM_ISOTROPIC に変更します。その結果、後に続く GetMapMode の呼び出しでは、MM_TEXT ではなく MM_ISOTROPIC が返されます。

多くのビットマップを使っている場合などでは、左から右へのレイアウトを保存する必要があるときもあります。左から右へのレイアウトを保存する必要があるときは、まず BitBlt または StretchBlt を呼び出してイメージを描画し、次にビットマップ制御フラグの dwLayout を LAYOUT_BITMAPORIENTATIONPRESERVED に設定します。

LAYOUT_RTL フラグを指定してレイアウトを変更すると、フラグで通常指定されているレイアウトの左右が反転します。誤りを防ぐために、標準のフラグに代替フラグ名を定義することもできます。推奨する代替フラグ名の一覧については、Windows SDK の「SetLayout」を参照してください。

必要条件

ヘッダー : afxwin.h

参照

参照

CDC クラス

階層図

CDC::GetLayout

CDC::SetMapMode

その他の技術情報

CDC のメンバ