前導零我發現CEdit的控制有選擇「數字」在其屬性,這樣我就可以防止輸入非數字字符到該文本框的用戶 - 這是CEdit的數量控制現在。 如果有一個選項「數字」,我想也許有一種方法可以刪除CEdit的前導零,這只是簡單的選項「數字」。MFC - 消除CEdit的數量控制
我曾嘗試與Dialog Data Exchange希望它會自動刪除前導零的我,但它不會。
那麼我認爲要做到這一點的方法是添加EN_KILLFOCUS消息爲每個CEdit的數量控制的,但我覺得筋疲力盡。
所以我認爲更好的方法是添加EN_KILLFOCUS,但所有的CEdit數字控件失去焦點事件點到一個函數,在這個函數中,我將刪除'當前'控制的前導零,但在C#我可以通過C++獲取'當前'控件,我不知道它是否受支持。
或繼承的CEdit使CEditNum - 它們實現失去焦點刪除前導零的功能,但這種解決方案,我不能設計它的Visual Studio的設計窗口(我認爲)上。我希望有類似this solution的解決方案(這是繪製&下降問題的解決方案)
反正之前申請的最終解決方案(EN_KILLFOCUS),我要確保,如果有更好的辦法 - 至少實現,再利用MFC的現有實現。
關於刪除前導零的一點解釋:你輸入:00001到CEdit控件中,然後失去焦點,CEdit控件顯示你:1.這個想法就像MS Excel,當你在它的單元格中輸入一個數字。