Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Латышский язык [D7, XP]


Восьмой ©   (2009-12-02 03:34:00) 

Добрый день! Не получается в Delphi 7 использовать латышский язык, а именно подобные ā,ķ,ļ,ē,š и т.д. символы. То есть при попытки напечатать в Edit какую-либо из этих букв (Alt+Сама буква, например Alt+a=ā), печатается совершенно другой символ (например вместо ā выходит в). Если изменить Charset на Baltic_charset, то символы в поле Edit начинают отображаться нормально, однако при попытке использовать их в Caption элемента Button, возникает всё также проблема и, к примеру, вместо ā отображается в.


Anatoly Podgoretsky   (2009-12-02 23:29:00) [1]

> Восьмой  (02.12.2009 21:34:06)  [6]

Можно,

1. Юникод
2. У МС есть программа AppLocale


Восьмой   (2009-12-02 21:34:00) [2]


> Так чего же ты хочешь? TButton рисует система.


То есть никак нельзя добиться того, чтобы одновременно отображались кнопки как на русском, так и на латышском языках?


Anatoly Podgoretsky   (2009-12-02 19:29:00) [3]


> > Локализация машины для не Юникод программ у тебя какая?
>
>
> Русская. Если поставить на латышскую, работает нормально,
>  но это не панацея.

Так чего же ты хочешь? TButton рисует система.


Восьмой   (2009-12-02 17:31:00) [4]


> А у Button тоже BALTIC_CHARSET? :)


Балтик чарсет у всей формы, пробовал выставлять конкретно для самой кнопки, также ситуация.


> Создать в Delphi 7 не простое приложение, а CLX (вместо
> Application создать CLX Application)


Не помогло, ситуация такая же как и с простым Application.


> Локализация машины для не Юникод программ у тебя какая?

Русская. Если поставить на латышскую, работает нормально, но это не панацея.


> 2) Для старых версий Delphi для поддержки юникода можно
> использовать специальные сторонние компоненты


Скачал вот этот http://www.tmssoftware.com/site/tmsuni.aspкомпонент. В инструкции написано:

> Delphi 6, 7
>
> - Unzip into a seperate directory and add following directories
> to the environment library path:
>   {$INSTALLDIR}\Source
>   {$INSTALLDIR}\Design
>   {$INSTALLDIR}\Packages
> - From the IDE file menu, choose File, Open
> - Browse for and open TMSUnicodeDx.bpg
> - From the project group, open TMSUnicodeDx.dpk and from
> the package editor, press Compile
> - From the project group, open TMSUnicodeDEDx.dpk and from
> the package editor, press Compile & Install
>
> with
>   x = 6 for Delphi 6
>   x = 7 for Delphi 7


From the project group, open TMSUnicodeDx.dpk and from the package editor, press Compile

Где находится "project group"? После открытия TMSUnicodeDx.bpg обджект инспектор и обджект три виевер становятся пустыми.

http://dump.ru/file/3866803- вот сам компонент.


Anatoly Podgoretsky   (2009-12-02 07:37:00) [5]

> Восьмой  (02.12.2009 03:34:00)  [0]

Локализация машины для не Юникод программ у тебя какая?


TIF   (2009-12-02 04:36:00) [6]

4) Ещё один простой способ даже есть :)
Создать в Delphi 7 не простое приложение, а CLX (вместо Application создать CLX Application)

"Текстовые" свойства у компонентов (тот же Text у Edit-а) там будут типа TCaption, который же будет являться WideString-ом:
TCaption = type WideString;


TIF   (2009-12-02 04:24:00) [7]

> Если изменить Charset на Baltic_charset, то символы в поле
> Edit начинают отображаться нормально, однако при попытке
> использовать их в Caption элемента Button

А у Button тоже BALTIC_CHARSET? :)

Вообще варианты такие:
1) Самый умный и избавляющий от кучи неприятностей. Перейти на Unicode. D7 юникод не поддерживает, нужна версия Delphi >= 2009
2) Для старых версий Delphi для поддержки юникода можно использовать специальные сторонние компоненты
3) Мучаться с Charset-ами, ещё можно в системе прописать кодовой страницей по умолчанию латышскую и т.п.


Наверх

Титульная страница Поиск, карта сайта Написать письмо