2010-03-23 67 views
0

我有一個在對話框中使用的CWnd派生對象。我需要能夠在對話框的任何地方拖動它。我有一個覆蓋OnNCHitTest的代碼,用於移動一個對話框,將其從標題欄以外的地方拖出。是否有任何等效的代碼來移動此CWnd。以下代碼不起作用。使用OnNcHItTest而不是CDialog

UINT CBaseSliderBtn::OnNcHitTest(CPoint point) 
{ 
    UINT ret=CWnd::OnNcHitTest(point); 
     if (ret == HTCLIENT) 
      return HTCAPTION; 

} 

如果這不是正確的方法,請建議其他最佳方法拖動滑塊。
謝謝

回答

0

你的例子只是模擬鼠標動作,因爲它們出現在對話標題。對話標題允許你拖動對話框。 至於你的自定義窗口,它可能是一個子窗口,並且允許使用窗口部件進行拖動。您應該處理mouse input以實現拖動。

+0

謝謝,但我想我做錯了什麼。我在創建過程中使用了classname static。我必須註冊我自己的班級。不管怎麼說,多謝拉 – 2010-03-24 11:10:39