:: Visual Foxpro, Foxpro for DOS
Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
Помогите, пожалуйста! Установила VFP 6.0 Sp4 на ноут, а он в свойствах форм вместо названий меток, кнопок и пр. дает кракозябры. Причем, на самой форме все буквы правильно. Я где-то что-то недоустановила?
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
ОС не той системы, или локали?
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Версия ОС какая?
Для VFP6 последней версией был SP5.
Проблемы неправильной кодировки начинать решать надо с проверки CPCURRENT() - должна быть 1251, если нет - настраивать CODEPAGE в config.fpw
Далее смотреть шрифты и темы винды - актуально это было для XP, с некоторыми локализованными темами всё криво отображалось - помогала смена на "классическую" тему, правда с тех пор уже 20 лет как минуло


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
Win10 Home. Меня смущает, что картинка(шрифт) на форме правильная, текст в методах нормальный, а в свойствах, типа названия кнопки, не знамо чо!

? CPCURRENT() => 1251
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
а CPCURRENT(1) и CPCURRENT(2) ?
и фотку, если можно, незнамо чего )
и пример формы, если не жалко (кстати, если создать форму с нуля, простую, то проблема та же?)



Исправлено 3 раз(а). Последнее : of63, 28.07.20 07:37
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
Конечно, вложила
Только форма почти MGb, не лезет...

?CPCURRENT(1) => 1251
?CPCURRENT(2) => 866



Исправлено 2 раз(а). Последнее : Kaskad, 28.07.20 08:20
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Настройки IDE (шрифт) ?
У меня такие (фото)
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
of63
Настройки IDE (шрифт) ?
У меня такие (фото)
У Вас, наверное, Фокс помладше, у меня картинка кончается на Field Mapping
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Надо искать, где-то должна быть настройка шрифта...
Фокс конечно не 6-ка. Кстати, нельзя соскочить с 6-ки?
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
Увы...
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Настройка должна быть!
Пример SCX/SCT ? Чисто из любопытства, вдруг там есть что-то...
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
of63
Настройка должна быть!
Пример SCX/SCT ? Чисто из любопытства, вдруг там есть что-то...

cloud.mail.ru
То, что на снимке - Работа -> Трудовая книжка -> кнопка "Ввод ЭТК"



Исправлено 1 раз(а). Последнее : Kaskad, 28.07.20 10:59
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Еле разрарил, рар какой-то раритетный чтоли )
В SCX все ОК, все в кодировке 1251. Дело все же в IDE
А что показывает
? _SCREEN.FontName && и прочие ?
можно в IDE - Window - Properties Window
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
ry

Сообщений: 2113
Дата регистрации: 24.09.2007
В самой оси какой регион установлен? Сталкивался с проблемой именно на Win10, когда программа (изначально польская разработка, но русифицированная) запускалась только в том случае, когда выбирался регион Россия. Если ставить Беларусь или другой, то даже с русским языком по умолчанию и с полностью одинаковыми региональными настройками даты/времени/etc программа просто не стартовала. А в случае со шрифтами это одно из первых мест, где стоит поэкспериментировать с настройками.
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
of63
Еле разрарил, рар какой-то раритетный чтоли

Да нет распаковывается нормально.
Может у тебя просто версия его ниже 5?
Ну дык вообще идеальный архиватор на все случаи 7zip поставить по умолчанию. И будет тебе счастье. \

Сама же формочка требует еще какого-то класса, т.е. в IDE фиг откроешь.
Но я ее глянул через USE.
И первое, что бросилось в глаза:
FontName = "Courier New Cyr"

Т.е. это очень древний шрифт вермен Win311. Которому в десятке возможно нет аналогов (подстановки возможно не прописаны в ней, как нечто невероятное сегодня).
Т.е. как минмиум - стоит для начала везде, где можно заменить "Courier New Cyr" на "Courier New".
Также вот дальше смотрю есть "Times New Roman CYR" - вместо нормального просто "Times New Roman".


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)




Исправлено 1 раз(а). Последнее : Crispy, 28.07.20 11:56
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Можно в прицнипе без проблем сделать такую замену через USE формы, и затем REPLACE всех этих значений на нужные в поле Properties.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Т.е. типа так:

USE fcard.scx EXCLUSIVE
REPLACE properties WITH ;
STRTRAN(properties,'FontName = "Times New Roman CYR"','FontName = "Times New Roman"') ALL
REPLACE properties WITH ;
STRTRAN(properties,'FontName = "Courier New Cyr"','FontName = "Courier New') ALL
USE

Разумеется, сделав на всякий случай перед этим копию формы.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
Crispy
Т.е. типа так:
USE fcard.scx EXCLUSIVE
REPLACE properties WITH ;
STRTRAN(properties,'FontName = "Times New Roman CYR"','FontName = "Times New Roman"') ALL
REPLACE properties WITH ;
STRTRAN(properties,'FontName = "Courier New Cyr"','FontName = "Courier New') ALL
USE

Разумеется, сделав на всякий случай перед этим копию формы.
Увы, все те же лица...
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
Kaskad
Автор

Сообщений: 214
Откуда: Новосибирск
Дата регистрации: 24.10.2007
of63
Еле разрарил, рар какой-то раритетный чтоли )
В SCX все ОК, все в кодировке 1251. Дело все же в IDE
А что показывает
? _SCREEN.FontName && и прочие ?
можно в IDE - Window - Properties Window

? _SCREEN.FontName -> Arial
Ratings: 0 negative/0 positive
Re: Вместо русских букв кракозябры...
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Криспи, как раз в рантайме этот Курьер Кир отображается, и даже в IDE лабельку изображает с хорошим текстом. А вот в окне пропертей текст не кирилический (хотя внутри SCT/SCX текст нормальный в кодировке 1251)

Хз каким фонтом изображается текст в окне пропертей, надо рыть в реестре может, или фокс запускать через ж, как нибудь в режиме совместимости. Локаль ОС так и не увидел (CPCURRENT(1) - винда и CPCURRENT(2) - ОЕМ). Вобщем я бы полез в реестр на предмет что там для фонтов фокса написано, потом со шрифтами что-то... В фоксе 9 похожая фигня случается с FRX, когда в:
* Кстати, если буквы в репорте будут русские, но будут на экране "налезать" друг на друга, а на принтере - будут вообще кракозябры, то:
* REPLACE Resoid WITH 204, Double WITH .T. FOR Resoid=1 - Resoid=1 - это кодовая страница шрифта по-умолчанию ОС
* Кстати, Resoid=0 тоже приводит к наезду букв друг на друга!
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 43 shumik73  (Гостей: 42)

© 2000-2024 Fox Club 
Яндекс.Метрика