У меня есть несколько форм Delphi, где мы используем несколько специальных символов - символ «градус» и символ «ом». Эти символы используются в надписях меток, сохраненных в файле DFM, и не создаются и не изменяются во время выполнения. Когда мы впервые спроектировали эти формы, символ степени был легким, потому что он находится в наборе символов Ansi (код 176), но символ Ом требовал использования греческого набора символов с кодом 217. К счастью (мы нашли) все другие символы, которые мы нужно (буквы и цифры) нормально работать с греческим charset.
Теперь мы бы хотели, чтобы эти формы выглядели одинаково в D2009. Символ градуса выглядит нормально, но символ ом показывает «Ù», потому что текст dfm - «Caption =» Typed in Ohms - 1234 '# 217 ». Я обнаружил, что могу отредактировать форму, добавив правильный символ в омах (8486), но, конечно, это потеряно для символа «?» возвращаясь к D7. В идеале я хотел бы сказать D2009, чтобы он продолжал использовать греческую кодировку с формой так, чтобы # 217 в dfm соответствовал символу в омах. Это возможно? Кажется, он игнорирует настройку Font.Charset, которая называется «GREEK_CHARSET». Я обнаружил грязный способ решения этой проблемы, который заключается в переборе всех компонентов и выполнении «StringReplace (S, 'Ù', OhmsChar, [rfReplaceAll])», но это ужасно, и, безусловно, должен быть лучший способ?
Спасибо,
Brian