2011-11-08 40 views
0

是否有任何理由,不管如何看起來微不足道,這將停止TControl.Hidecontrol.Visible := False工作?TControl.Hide爲什麼不隱藏控件?

我有一行代碼用於隱藏包含某些控件(JvPanels等)的面板,該控件由於某些原因不會隱藏面板。

這是我試過直接發送消息給面板來隱藏它(因爲是在調用setVisible功能)無濟於事代碼

pnlMainData.Hide; 

+2

也許'pnlMainData'不是你認爲的那樣?也許'pnlMainData'有一個父母自動管理其子控件?也許你在'TTimer'的'OnTimer'事件中,或'TApplicationEvents'的'OnIdle'事件中執行'pnlMainData.Show'? –

+0

ShowWindow(pnlMainData.Handle,SW_HIDE)隱藏面板嗎?如果是,那麼也許一個自定義的WndProc正在吃某些消息? –

+2

您如何展示一個重現問題的小型項目? –

回答

0

經過一段時間的爭鬥後,我重新做了一堆代碼來接近隱藏事件並自行排序。我也注意到的一件事是,當使用FASTMM時,有時會出現這個問題,當不使用它時似乎工作正常。

我發送的應用程序現在由我的客戶測試人員測試,所以我們會看看他們是否有同樣的問題。

+0

不要欺負FastMM是你的問題。這個問題幾乎可以肯定在你的代碼中。 –

+0

我不是。我使用fastmm來追蹤我正在跟蹤的其他一些錯誤,並且只是注意到當試圖隱藏面板時它有時會隱藏它。從來沒有,隱藏功能正在工作,因爲它應該。 – Brendan