在嘗試更新舊C++ Builder/Delphi應用程序的外觀時,我啓用了視覺主題(visual styles),並對添加了多少性能主題感到驚訝。例如,我們的主要設置頁面(我們不希望立即重做的開發時間和成本再培訓的原因有11片,200控制怪物對話):啓用XP視覺主題/視覺樣式會導致性能下降
- 沒有主題啓用:〜0.1秒構建表單及其控件(由QueryPerformanceCounter測量),〜0.9秒從點擊菜單項目到所顯示的表格(如秒錶測量)。對最終用戶來說不是很明顯。
- 啓用主題:〜0.6秒構建窗體及其控件,〜1.5秒從點擊菜單項到所顯示的窗體。對最終用戶非常明顯。
我在Windows XP桌面和Windows 7虛擬機上獲得了類似的結果。
我意識到我可以採取一些措施來改善這種特殊情況(例如,懶惰地加載對話框的標籤頁或重新設計它的完整版),但是對於主題添加如此顯着的性能影響通常是典型的?有沒有簡單的建議來避免這種性能下降?
您是否將性能問題追蹤到一個特定的事情,還是它的組合? – 2009-12-07 18:12:32
沒有一件事;根本問題顯然只是形式太大而已。 BeginUpdate/EndUpdate幫助,我會考慮創建一次對話框,而不是按需爲我們的下一個版本創建。謝謝你的幫助。 – 2009-12-07 19:16:26