我已經實現了我的自定義按鈕繼承自CButton並使用uxtheme.dll(DrawThemeBackground與BP_PUSHBUTTON)繪製它。使用uxtheme.dll自定義繪製按鈕
一切工作正常,但我有兩個狀態(普通和按下),熱狀態是相同的。這意味着當用戶將光標放在按鈕上時,無論按鈕狀態如何(按下或不按下),它都會被畫出。
這對用戶來說有點令人困惑,我想改變按鈕在Pressed & Hot狀態下的繪製方式。有人知道一種方式嗎?
我也想過定製整個繪圖,但按鈕使用漸變,邊框,陰影等。因此,要自己繪製所有東西並不容易。有沒有辦法找到DLL的源代碼或知道如何做到這一點?
在此先感謝。
哈維爾
注:我想我可能能才達到我想要使用CMFCButton並重寫OnDraw的方法來做。讓控件在OnDrawBorder上繪製按鈕,然後自己繪製內部按鈕。但是我需要知道按下時控件如何繪製內部按鈕。這是一個漸變,我無法猜測它是如何完成的。有人有線索嗎?
請看看我在原始問題中的註釋。並感謝您的幫助。 – 2010-05-05 08:35:35