想寫博客不知道從何處開始,就從回憶開始吧.
第一個就從自定義日歷控件開始
產生背景:
大概2015年時候有個項目要用到日歷,用默認日歷展示給用戶看,用戶毫不客氣都說界面太丑,最好做成像百度日歷那樣方便使用。
花費了一些時間感覺模仿相似度達到95%,模糊不清楚是因為圖片被壓縮了,瀏覽器中看圖片還是挺正常的。
最終效果如下:
最開始都想法是做成一個網頁版百度日歷,然后用WebBrowser加載,因為這樣相對容易些,下圖是用BS實現
實現是實現了,功能也滿足, 開發人員使用起來不方便,最關鍵都是 用WebBrowser重量級的東西來搞這個心里難受。
在第二版本中使用GDI+來繪制,遇到不少問題在此記錄
1、ToolTip提示展示位置和外觀繪制,以及焦點問題。
2、ComboBox外觀處理,點擊其他地方自動消失,點擊滾動條需要繼續。
3、Hook都使用分為 32位和64位。
4、GDI+繪制圖形 容易閃爍。
5、每天在桌面創建快捷方式,繪制當前日期圖標(.ico)作為快捷方式的圖標,因為系統緩存緣故圖標卻不發生變化。
在下篇版本分析逐個問題解決,當前效果如下,感覺錄制有些不流暢
發現和百度日歷有些不一樣,比如節日多了些,每一行前面顯示第幾周.