2015-04-01 49 views
0

在同一個應用程序中,我有兩個不同的wxStaticText實例。每個顯示以度表示的角度值。我已經測試了字體名稱和字體編碼的兩個實例。兩者都是相同的。我測試過,傳遞給SetLabel()的兩個字符串都使用相同的字符值,小數點176.然而,人們會按預期顯示「度」字符(小圓圈,高位),而另一個顯示的是奇數字符不熟悉。怎麼會這樣?我需要測試一下wxStaticText的其他屬性嗎?wxStaticText不一致地顯示「度」字符

+0

我認爲我們需要更多信息。我會看看平臺,wx版本(事情已經從2.8改爲3.0),所有字符編碼都包含在內,這兩個字符串的二進制內容。 – bogdan 2015-04-01 19:03:21

回答

0

我無法解釋你所看到的,因爲顯然兩個相同的控件必須以相同的方式行爲,但我可以告訴你,使用小數點176不是編碼度符號的好方法,除非明確使用wxConvISO8859_1創建相應的wxString

最好使用wxString::FromUTF8("\xc2\xb0")來替代,或者最好確保源文件是UTF-8編碼,並且只使用wxString::FromUTF8("°")

+0

謝謝,對我的問題沒有任何影響。 – 2015-04-02 15:17:30

0

Arghhhh!找到了。我假定SetLabel()是從wxWindow基類繼承的wxStaticText :: SetLabel()。不是。我們有一個我自己的wxStaticText的包裝類,我不知道。它是包裝字符串值的包裝類。

道德:調試不熟悉的代碼時,不要做出假設,步驟ALL THE WAY英寸。