| Автор | Сообщение |
|
|
| постоянный участник
|
Пост N: 7922
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.11.24 23:37. Заголовок: Смена языка в программе.
При запуске программы делаю так: HB_LANGSELECT( "SRWIN" ) Потом пытаюсь заменить этот язык на другой. Прога вылетает с ошибкой: Error BASE/1303 ЌҐўҐа-л© аЈг¬Ґ-в: __HB_LANGSELECT Args: [1] = C RU1251.RU866 --------------------------------- Stack Trace --------------------------------- Called from __HB_LANGSELECT(0) Called from HB_LANGSELECT(0) Called from MYCONFIG301MENU(282) in module: 6Config.prg Called from MENU6CONFIG(115) in module: 6Config.prg Called from (b)SETS_EVENT2WINDOWSTANDART(298) in module: 0main.prg Почему ? Как правильно сделать ? 
|
 |

|
|
Ответов - 6
[только новые]
|
|
|
|
| moderator
|
Пост N: 1635
Зарегистрирован: 06.07.06
|
|
Отправлено: 18.11.24 14:02. Заголовок: Наверное, надо REQUE..
Наверное, надо REQUEST вставить для этого другого языка, например, REQUEST HB_LANG_RUWIN
|
 |

|
|
|
| постоянный участник
|
Пост N: 7923
Зарегистрирован: 12.09.06
|
|
Отправлено: 18.11.24 21:03. Заголовок: alkresin пишет: Нав..
alkresin пишет: | цитата: | Наверное, надо REQUEST вставить для этого другого языка, например, REQUEST HB_LANG_RUWIN |
| Стоят все кодировки: #include "hbextcdp.ch" #include "hb_CodePage.ch" REQUEST HB_CODEPAGE_RU866, HB_CODEPAGE_RU1251, HB_CODEPAGE_RUKOI8, HB_CODEPAGE_RUISO REQUEST HB_CODEPAGE_UA866, HB_CODEPAGE_UA1251, HB_CODEPAGE_UAKOI8, HB_CODEPAGE_UA1125 REQUEST HB_CODEPAGE_UTF8, HB_CODEPAGE_UTF8EX, HB_CODEPAGE_UTF16LE REQUEST HB_CODEPAGE_BG866 REQUEST HB_CODEPAGE_BGISO REQUEST HB_CODEPAGE_BGMIK REQUEST HB_CODEPAGE_BGWIN REQUEST HB_CODEPAGE_CS852 REQUEST HB_CODEPAGE_CS852C REQUEST HB_CODEPAGE_CSISO ..... и т.д. Вылет происходит после попытки смены кодировки уже запущенной программы. Делаю отдельное меню и пытаюсь сменить язык. HB_LANGSELECT( cSetLang ) Просто непонятно, так может и нельзя делать ? 
|
 |

|
|
|
| постоянный участник
|
Пост N: 4656
Зарегистрирован: 17.02.12
|
|
Отправлено: 18.11.24 21:31. Заголовок: Andrey смотри i_lan..
Andrey смотри i_lang.ch кусочек Скрытый текст
... #translate SET LANGUAGE TO ENGLISH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_EN ; HB_LANGSELECT( "EN" ) ; InitMessages() #translate SET LANGUAGE TO SPANISH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_ES ; HB_LANGSELECT( "ES" ) ; InitMessages() #translate SET LANGUAGE TO FRENCH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_FR ; HB_LANGSELECT( "FR" ) ; InitMessages() #translate SET LANGUAGE TO PORTUGUESE => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_PT ; HB_LANGSELECT( "PT" ) ; InitMessages() #translate SET LANGUAGE TO ITALIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_IT ; HB_LANGSELECT( "IT" ) ; InitMessages() #translate SET LANGUAGE TO BASQUE => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_EU ; HB_LANGSELECT( "EU" ) ; InitMessages() #translate SET LANGUAGE TO DUTCH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_NL ; HB_LANGSELECT( "NL" ) ; InitMessages() #if ( __HARBOUR__ - 0 > 0x030200 ) #translate SET LANGUAGE TO GERMAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_DE ; HB_LANGSELECT( "DE" ) ; InitMessages() #translate SET LANGUAGE TO GREEK => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_EL ; HB_LANGSELECT( "EL" ) ; InitMessages() #translate SET LANGUAGE TO RUSSIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_RU ; HB_LANGSELECT( "RU" ) ; InitMessages() #translate SET LANGUAGE TO UKRAINIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_UK ; HB_LANGSELECT( "UK" ) ; InitMessages() #translate SET LANGUAGE TO BYELORUSSIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_BEWIN ; HB_LANGSELECT( "BE" ) ; InitMessages() #translate SET LANGUAGE TO POLISH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_PL ; HB_LANGSELECT( "PL" ) ; InitMessages() #translate SET LANGUAGE TO CROATIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_HR ; HB_LANGSELECT( "HR" ) ; InitMessages() #translate SET LANGUAGE TO SLOVENIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_SL ; HB_LANGSELECT( "SL" ) ; InitMessages() #translate SET LANGUAGE TO CZECH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_CS ; HB_LANGSELECT( "CS" ) ; InitMessages() #translate SET LANGUAGE TO BULGARIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_BG ; HB_LANGSELECT( "BG" ) ; InitMessages() #translate SET LANGUAGE TO HUNGARIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_HU ; HB_LANGSELECT( "HU" ) ; InitMessages() #translate SET LANGUAGE TO SLOVAK => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_SK ; HB_LANGSELECT( "SK" ) ; InitMessages() #else #translate SET LANGUAGE TO GERMAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_DEWIN ; HB_LANGSELECT( "DEWIN" ) ; InitMessages() #translate SET LANGUAGE TO GREEK => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_ELWIN ; HB_LANGSELECT( "ELWIN" ) ; InitMessages() #translate SET LANGUAGE TO RUSSIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_RUWIN ; HB_LANGSELECT( "RUWIN" ) ; InitMessages() #translate SET LANGUAGE TO UKRAINIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_UAWIN ; HB_LANGSELECT( "UAWIN" ) ; InitMessages() #translate SET LANGUAGE TO BYELORUSSIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_BEWIN ; HB_LANGSELECT( "BEWIN" ) ; InitMessages() #translate SET LANGUAGE TO POLISH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_PLWIN ; HB_LANGSELECT( "PLWIN" ) ; InitMessages() #translate SET LANGUAGE TO CROATIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_HR852 ; HB_LANGSELECT( "HR852" ) ; InitMessages() #translate SET LANGUAGE TO SLOVENIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_SLWIN ; HB_LANGSELECT( "SLWIN" ) ; InitMessages() #translate SET LANGUAGE TO CZECH => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_CSWIN ; HB_LANGSELECT( "CSWIN" ) ; InitMessages() #translate SET LANGUAGE TO BULGARIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_BGWIN ; HB_LANGSELECT( "BGWIN" ) ; InitMessages() #translate SET LANGUAGE TO HUNGARIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_HUWIN ; HB_LANGSELECT( "HUWIN" ) ; InitMessages() #translate SET LANGUAGE TO SLOVAK => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_SKWIN ; HB_LANGSELECT( "SKWIN" ) ; InitMessages() ... #translate SET CODEPAGE TO ENGLISH => HB_CDPSELECT( "EN" ) #translate SET CODEPAGE TO SPANISH => REQUEST HB_CODEPAGE_ESWIN ; HB_CDPSELECT( "ESWIN" ) #translate SET CODEPAGE TO FRENCH => REQUEST HB_CODEPAGE_FRWIN ; HB_CDPSELECT( "FRWIN" ) #translate SET CODEPAGE TO PORTUGUESE => REQUEST HB_CODEPAGE_PT850 ; HB_CDPSELECT( "PT850" ) #translate SET CODEPAGE TO GERMAN => REQUEST HB_CODEPAGE_DEWIN ; HB_CDPSELECT( "DEWIN" ) #translate SET CODEPAGE TO GREEK => REQUEST HB_CODEPAGE_ELWIN ; HB_CDPSELECT( "ELWIN" ) #ifdef __XHARBOUR__ #translate SET CODEPAGE TO RUSSIAN => REQUEST HB_CODEPAGE_RUWIN ; HB_CDPSELECT( "RUWIN" ) #else #translate SET CODEPAGE TO RUSSIAN => REQUEST HB_CODEPAGE_RU1251 ; HB_CDPSELECT( "RU1251" ) #endif #translate SET CODEPAGE TO UKRAINIAN => REQUEST HB_CODEPAGE_UA1251 ; HB_CDPSELECT( "UA1251" ) #translate SET CODEPAGE TO ITALIAN => REQUEST HB_CODEPAGE_ITWIN ; HB_CDPSELECT( "ITWIN" ) #translate SET CODEPAGE TO POLISH => REQUEST HB_CODEPAGE_PLWIN ; HB_CDPSELECT( "PLWIN" ) #translate SET CODEPAGE TO SLOVENIAN => REQUEST HB_CODEPAGE_SLWIN ; HB_CDPSELECT( "SLWIN" ) #translate SET CODEPAGE TO SERBIAN => REQUEST HB_CODEPAGE_SRWIN ; HB_CDPSELECT( "SRWIN" ) #translate SET CODEPAGE TO BULGARIAN => REQUEST HB_CODEPAGE_BGWIN ; HB_CDPSELECT( "BGWIN" ) #translate SET CODEPAGE TO HUNGARIAN => REQUEST HB_CODEPAGE_HUWIN ; HB_CDPSELECT( "HUWIN" ) #translate SET CODEPAGE TO CZECH => REQUEST HB_CODEPAGE_CSWIN ; HB_CDPSELECT( "CSWIN" ) #translate SET CODEPAGE TO SLOVAK => REQUEST HB_CODEPAGE_SKWIN ; HB_CDPSELECT( "SKWIN" ) #translate SET CODEPAGE TO DUTCH => REQUEST HB_CODEPAGE_NL850 ; HB_CDPSELECT( "NL850" ) #translate SET CODEPAGE TO FINNISH => REQUEST HB_CODEPAGE_FI850 ; HB_CDPSELECT( "FI850" ) #translate SET CODEPAGE TO TURKISH => REQUEST HB_CODEPAGE_TRWIN ; HB_CDPSELECT( "TRWIN" ) #translate SET CODEPAGE TO SWEDISH => REQUEST HB_CODEPAGE_SVWIN ; HB_CDPSELECT( "SVWIN" ) + hb_langSelect([<cLangID>][, <cCodepage>]) ➜ cOldLangID <cLangID> смотри таблицу в описании ф-ии https://github.com/Petewg/harbour-core/wiki/hb_L # Display name Lang ID ... 30 Serbian (cyrillic) sr_cyr 31 Serbian (latin) sr_lat ... как на практике применять, смотри сам. У меня unicode программы и кроме CDP ничего не использовал
|
|
 |

|
|
|
| постоянный участник
|
Пост N: 7924
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.11.24 07:51. Заголовок: Получилось так: 1) В..
Получилось так: 1) В свою систему Win10 добавляю сербский язык - кириллица. 2) В начале программы из ини-файла устанавливаю сербский язык - HB_LANGSELECT("SRWIN") 3) Базу открывает в UTF8 Результат такой: 
|
 |

|
|
|
| moderator
|
Пост N: 1636
Зарегистрирован: 06.07.06
|
|
Отправлено: 19.11.24 08:35. Заголовок: Andrey пишет: REQUE..
Andrey пишет: | цитата: | | REQUEST HB_CODEPAGE_RU866, HB_CODEPAGE_RU1251, HB_CODEPAGE_RUKOI8, HB_CODEPAGE_RUISO |
| При чем тут HB_CODEPAGE? Я же ясно написал: HB_LANG. Codepage API и Lang API - это разные подсистемы
|
 |

|
|
|
| постоянный участник
|
Пост N: 7925
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.11.24 09:11. Заголовок: alkresin пишет: Я ж..
alkresin пишет: | цитата: | | Я же ясно написал: HB_LANG |
| Блин, пропустил... А слона то я и не заметил... СПАСИБО !
|
 |

|
|