0

ウィンドウが実際に表示されるまで、CDockablePane 派生ウィンドウの初期化を遅らせたい。ウィンドウが単純にドッキングされている場合、WM_SHOWWINDOW は非常に効果的ですが、ウィンドウが AutoHideMode の場合、WM_SHOWWINDOW は予測できず、スライド アウトが終了したことを示すイベントが表示されません。

何かアドバイス?

4

2 に答える 2

1

私が選んだ解決策は、そうである場合とそうでない場合の仮想メソッドCDockablePane::ShowPaneをオーバーライドすることです。IsAutoHideMode()FALSECDockablePane::OnSlide

于 2010-12-16T10:53:22.833 に答える
0

CDockablePane::CheckStopSlideCondition をオーバーライドして、bSlideDirection と基本クラスの実装の戻り値をどこかに保存してみてください

CDockablePane::OnTimer をオーバーライドし、nIDEvent が AFX_AUTO_HIDE_SLIDE_OUT_EVENT の場合、基本クラスの実装後に保存された値を確認します。

注: AFX_AUTO_HIDE_SLIDE_OUT_EVENT は文書化されておらず、MFC の将来のバージョンでは使用できない可能性があります

于 2010-12-15T21:52:27.453 に答える