2013-12-13 31 views
0

非Unicode德爾福(我試過用D7和D2006):TRichEdit和Unicode - 不同的行爲在XP和Win7

  1. 將一個TRichEdit窗體上並運行應用程序
  2. 切換到一些「異國情調」的鍵盤佈局(俄語,希臘語,等等)
  3. 類型的東西

在XP系統中,一切都很好,我可以看到正常的俄語字母。但是,Win7上的字符是錯誤的(來自其他語言的重音字母)。如果我從MS Word中複製俄文文本並將其粘貼到RichEdit,它看起來沒問題。

我懷疑它與RichEdit控件版本有關,但它有什麼辦法可以克服它?如果可能的話,我想避免切換到TTntRichEdit(它看起來工作正常),因爲我需要更改大量現有的代碼。

+0

似乎在我的Win7 x64上與D5一起正常工作。但是,如果在程序運行時切換鍵盤,應用程序不會檢測到它。 –

+0

這可能沒有關係,但是你見過這個[Francois](http://stackoverflow.com/users/9842/francois)的帖子是關於使用不同的版本[blogpost](http://fgaillard.com/2010/09/使用 - richedit-4-1-with-d2010 /) –

+0

謝謝Merlin,不,我還沒有看到那個。我會盡力去關注它。 – vrad

回答

0

嘗試使用像AnsiToUtf8AnsiToUnicode這樣的轉換,當用戶按下某個鍵時。

+0

在OnKeyPress?謝謝,但不,它不起作用,這對我來說並不奇怪,因爲關鍵參數是Char,並且我不能在其中放入兩字節字符。除非有其他方法來攔截信息? – vrad

+0

-1這當然不是答案 –

+0

它可能在評論隊列中得到贊成,我在第一篇文章中找到它。那只是隊列的缺點...... – TLama

相關問題