2013-12-13 4 views
0

에 다른 동작 (I는 D7 및 D2006과 시도했습니다) :TRichEdit는 유니 코드 - 비 유니 코드 델파이 XP와 Win7에

  1. 가 응용 프로그램을
  2. 스위치를 폼에 TRichEdit는 넣고 실행 일부 "이국적인"키보드 레이아웃 (러시아어, 그리스어, 무엇이든) XP에
  3. 유형 뭔가

을, 모든 좋은 내가 정상 러시아어 문자를 볼 수 있습니다. 그러나 Win7 문자가 잘못되었습니다 (다른 언어의 악센트 부호가있는 문자). MS Word에서 러시아어 텍스트를 복사하여 RichEdit에 붙여 넣으면 괜찮습니다.

나는 그것이 RichEdit 컨트롤 버전과 관련이 있다고 의심하지만 그것을 극복 할 수있는 방법이 있습니까? 가능한 경우 기존 코드를 많이 변경해야하므로 TTntRichEdit (제대로 작동하는 것으로 보임)로 전환하는 것을 피하고 싶습니다.

+0

내 Win7 x64에서 D5와 잘 작동하는 것 같습니다. 그러나 프로그램이 실행되는 동안 키보드를 전환하면 응용 프로그램이 키보드를 감지하지 못합니다. –

+0

이것은 관련이 없지만 다른 버전 [blogpost] (http://fgaillard.com/2010/09/) 사용에 대한이 [Francois] (http://stackoverflow.com/users/9842/francois) 게시물을 보았습니다. using-richedit-4-1-d2010 /) –

+0

고맙다 Merlin, 아니, 그걸 보지 못했다. 나는 그것을 따라하려고 노력할 것이다. – vrad

답변

0

사용자가 키를 누르면 AnsiToUtf8 또는 AnsiToUnicode과 같은 변환을 사용하십시오.

+0

OnKeyPress에서? 고마워,하지만 아니, 그것은 나를 위해 놀라운되지 않습니다 작동하지 않습니다, 주요 인자는 Char이며 2 바이트 문자를 넣어 수 없습니다. 메시지를 가로 챌 다른 방법이 없다면? – vrad

+0

-1 이것은 분명히 대답이 아닙니다. –

+0

아마 첫 번째 게시물 사이에서 리뷰 큐에 upvote가 있습니다. 그 대기열의 단점은 ... – TLama

관련 문제