本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[MSVC] MFC MDIチャイルドのカーソル形状を変える方法

文書番号: 403849

最終更新日: 2004/04/27


この資料は以下の製品について記述したものです。


概要

この資料は MFC で MDI チャイルドウインドウのカーソルの形状を変える一つの
方法を紹介したものです。

詳細

MFC で MDI チャイルドウインドウのカーソルを変えるにはいろいろな方法が考えら
れますが、ここでは、そのひとつについて説明します。この方法では、テンプレートで 指定している CView の派生クラスのコンストラクタで ウィンドウクラスを登録し、 継承した Create メンバ関数内でそのクラス名を使用しています。
  ////////////////////////////////////////////////
  class CMyView : public CView
  {
  protected: // シリアライズ機能のみから作成します。
      CMyView();
      DECLARE_DYNCREATE(CMyView)
  // 属性
  public:
      CMdicurDoc* GetDocument();
      CString classname;                                      // 追加
  // オペレーション
  public:
      virtual BOOL Create( LPCSTR lpszClassName,              // 追加
                           LPCSTR lpszWindowName,
                           DWORD dwStyle,
                           const RECT& rect,
                           CWnd* pParentWnd,
                           UINT nID,
                           CCreateContext* pContext = NULL);
    ....
  };
  /////////////////////////////////////////////////////////////////////////////
  // CMyView クラスの構築/消滅
  CMyView::CMyView()
  {
      // classname は、CMyView のメンバ データ (CString) として定義しておく
      classname = AfxRegisterWndClass (   CS_VREDRAW|CS_HREDRAW,
                   AfxGetApp()->LoadStandardCursor(IDC_CROSS), //カーソルの指定
                   (HBRUSH)GetStockObject (WHITE_BRUSH)
                   );
  }
  BOOL CMyView::Create(
                           LPCSTR lpszClassName,
                           LPCSTR lpszWindowName,
                           DWORD dwStyle,
                           const RECT& rect,
                           CWnd* pParentWnd,
                           UINT nID,
                           CCreateContext* pContext /*= NULL*/)
  {
      lpszClassName = classname;   //コンストラクタで登録したクラス名を利用する
      // 親クラスの Create 関数を呼び出す
      return CView::Create (lpszClassName, lpszWindowName, dwStyle, rect,
                                                     pParentWnd, nID, pContext);
  }

詳細

  • Visual C++ は、米国 Microsoft Corporation の商標です。

Keywords: C7 KBHOWTO VC10 VC15 VC20 KB403849
Technology: kbAudDeveloper kbvc150 kbVC32bitSearch kbVCsearch kbZNotKeyword3 kbZNotKeyword8

inserted by FC2 system