• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:スクロールバーコントロールについて質問があります)

スクロールバーコントロールについて質問があります

このQ&Aのポイント
  • スクロールバーコントロールについて質問があります。スクロールバーの作成手順や設定について詳しく教えてください。
  • また、スクロールバーの表示位置調整やScrollPosのセットについて、Win32API関数とMFCでの違いや制限も教えてください。
  • お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

スクロールバーを何処の設置したいのでしょう? フォームビューの下端であれば CFornView::OnSizeにおいて if ( m_sbHoriz.m_hWnd ) {   CRect rc;   m_szHorz.GetWindowRect( &rc );   m_szHorz.MoveWindow( 0, cy - rc.Height(), cx, rc.Height()); } といった具合に コントロールのハンドルをチェックして APIを使いましょう m_szHrzは CFormView::OnInitialUpdate()などでコントロールとリソースが結合されたあとならビュークラスの中で使えますよ OnSizeはコントロールが初期化される前のビュークラスの生成時にも呼ばれるのでハンドルのチェックが必要です WinAPIで行っているほとんどの関数はCScrollBarクラスにあると思います 引数の HWNDを省力した形の引数をとると思います

darum
質問者

お礼

できました! ありがとうございます。とっても助かりました。 最下端に配置したかったのですが、私のコードでは、スクロールバーの上端が、Viewの最下端になってしまっていたようですね。 ご指南にしたがって修正したところ、目的の動作ができました。 また、MFC化の方法も理解したので、これから移植を進めたいと思います。 また何かありましたらよろしくお願いいたします。

関連するQ&A