Автор | Сообщение |
|
| |
Пост N: 40
Зарегистрирован: 22.04.15
|
|
Отправлено: 29.08.19 05:19. Заголовок: IDE8
Можете на простом примере показать: 1. На примере TEXTBOX вводились символы UTF8 2. На примере LABEL - соответственно выводились
|
|
|
Ответов - 125
, стр:
1
2
3
4
5
6
7
All
[только новые]
|
|
|
| |
Пост N: 286
Зарегистрирован: 05.11.05
|
|
Отправлено: 02.12.20 23:44. Заголовок: SergKis пишет: у ва..
SergKis пишет: цитата: | у вас русский windows и др. языки будут искажаться на ерунду |
| Я нечто подобное подозревал: rvu пишет: цитата: | Или чего-то не хватает или я вообще что-то делаю не так. |
| Если я свою программу скопирую на немецкую винду, то там будут кракозябры? Да, это очевидно. А если там в винду русский текст добавлен? Как-то пришлось под немецкой виндой что-то делать, но я тогда с консолью работал, 866 страницей, что-то менял в настройках, потом отдавая компьютер хозяину, вернул эти изменения на место. А страница 1251 у него и так есть. Вот если я у себя добавлю в винду, например, польский язык, я увижу их корректный текст в программе?
|
|
|
|
| постоянный участник
|
Пост N: 3524
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 00:13. Заголовок: rvu Вы же уже попро..
rvu Вы же уже попробовали на рус. windows цитата: | Вообще такое ощущение, что программа у меня только с русским языком дружит: SET CODEPAGE TO SPANISH SET LANGUAGE TO SPANISH AlertInfo(hb_Utf8ToStr('Ññ',"ESWIN")) // неправильно показывает AlertInfo(hb_Utf8ToStr('Проба текста',"RU1251")) // всё работает |
| цитата: | Как-то пришлось под немецкой виндой что-то делать, но я тогда с консолью работал, 866 страницей |
| У нас немцы приходили с линуксом, clipper и ads в начале 2000х, но их выжили. цитата: | Вот если я у себя добавлю в винду, например, польский язык, я увижу их корректный текст в программе? |
| Нет, надо что бы windows был на польском. У нас, как правило, ставят windows клиенты с LVWIN (нац. озабоченные) и с RU1251 остальные и когда делал пример с тсб и hardset имел ввиду на 1ой в prg ставлю codepage LVWIN (1257), на 2ой RU1251. В Language системы 3и языка EN, LV, RU (как минимум)
|
|
|
|
| постоянный участник
|
Пост N: 3525
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 00:18. Заголовок: PS Лат. windows - эт..
PS Лат. windows - это все сообщения, меню, кнопки, титулы ... все на латышском (веселуха еще та, т.к. могут отличаться от EN вариантов)
|
|
|
|
| |
Пост N: 287
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 06:23. Заголовок: SergKis пишет: Нет,..
SergKis пишет: цитата: | Нет, надо что бы windows был на польском. У нас, как правило, ставят windows клиенты с LVWIN (нац. озабоченные) и с RU1251 остальные и когда делал пример с тсб и hardset имел ввиду на 1ой в prg ставлю codepage LVWIN (1257), на 2ой RU1251. В Language системы 3и языка EN, LV, RU (как минимум) |
| Не понимаю. На винде с RU1251 это у вас работает? А если я добавлю язык разве у меня не будет - В Language системы "3и языка (как минимум)"? Т.е. я не понимаю, как у вас три языка и больше, если они не добавлены потом в национальный виндоус. Если у вас ставят windows клиенты с LVWIN, разве они потом не добавляют русский, как я польский (или немецкий) хотел для примера добавить?
|
|
|
|
| постоянный участник
|
Пост N: 3526
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 10:26. Заголовок: rvu пишет Если у вас..
rvu пишет цитата: | Если у вас ставят windows клиенты с LVWIN, разве они потом не добавляют русский, как я польский (или немецкий) хотел для примера добавить? |
| Для unicode добавляйте сколько надо языков, для не unicode hmg что стоит в Region control panel. У меня windows EN, Region - Russian, Local - Latvia. Languge - EN, LV, RU. Для hmg LVWIN недоступен Region - Latvia, Local - Latvija. Languge - EN, LV, RU. Для hmg RUSSIAN недоступен Как работать в hb VWT режиме смотрите тексты hbedit редактора (не GUI), кусочек ... hb_cdpSelect( "RU866" ) @ 09, 10, 15, 72 BOX "┌─┐│┘─└│ " @ 13, 20 SAY "├" @ 13, 60 SAY "┤" @ 13, 11 TO 13, 71 hb_cdpSelect( oEdit:cp ) @ 10, 12 SAY "Open file" @ 12, 12 SAY "[ ] ReadOnly" @ 12, 27 SAY "[ ] In a current window" ... т.е. рамочки ru866, надписи en, oEdit:cp - выбранный язык текста
|
|
|
|
| |
Пост N: 289
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 12:39. Заголовок: Т.е. это "Язык п..
Т.е. это "Язык программ не поддерживающих Юникод"? Я могу выбрать немецкий, тогда у меня всё в Минигуи на немецком заработает, но вместо русского?
|
|
|
|
| постоянный участник
|
Пост N: 3527
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 13:02. Заголовок: rvu пишет Я могу выб..
rvu пишет цитата: | Я могу выбрать немецкий, тогда у меня всё в Минигуи на немецком заработает, но вместо русского? |
| Да. Только тсб можно исп. для отображения с исп. chardset, т.е. для DE надо знать номер charset, что бы исп. с RUSSIAN cdp. Примечание для GUI интерфейса. Если исп. unicode HwGui, там таблицы это как BROWSE в hmg и если вам нужны многострочные строки, заголовки, подножия, superheader, то этого там нет
|
|
|
|
| постоянный участник
|
Пост N: 3528
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 13:47. Заголовок: PS Есть пример в мин..
PS Есть пример в минигуи с _MIXEDMODE_ с запуском окна ShowConsole( cConsoleTitle ) ... HideConsole( cConsoleTitle ) посмотрите, может под ним можно организовать ввод DE данных. Я не смотрел за ненадобностью, просто вспомнил про _MIXEDMODE_
|
|
|
|
| постоянный участник
|
Пост N: 3529
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 15:22. Заголовок: PS2 Посмотрел пример..
PS2 Посмотрел пример BASIC\MixedMode, в build.bat вместо gtwin исп. gtwvt -> получил окно wvt. Так понимаю, что редактор hbedit можно встроить в такие окна (gtwin, gtwvt) и работать с текстами в разных кодировках, потом писать тексты можно в dbf
|
|
|
|
| |
Пост N: 290
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 18:45. Заголовок: Подумалось, а если с..
Подумалось, а если сделать свой шрифт? Взять готовый фонт и заменить какие-нибудь русские буквы немецкими. Далее подключить этот фонт к винде и указывать его в нужных контролах. Работать с ним, как с обычным русским текстом, для харбора и для базы он таким и будет, только показываться будут символы из особого фонта. Заменить русские буквы, которые на тех клавишах, что на немецкой клавиатуре. Можно сделать и виртуальную клавиатуру для ввода этих знаков. Как такая идея? Реализуема? Хочу сразу много критики, чтобы время впустую не тратить.
|
|
|
|
| постоянный участник
|
Пост N: 3530
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 19:13. Заголовок: rvu Вы посмотрели т..
rvu Вы посмотрели тексты hbedit ? Можно для начала взять для -gtwvt установки для окна ... IF Empty( nScreenH ) nScreenH := 25 ENDIF IF Empty( nScreenW ) nScreenW := 80 ENDIF IF nScreenH != 25 .OR. nScreenW != 80 IF !SetMode( nScreenH, nScreenW ) nScreenH := 25 nScreenW := 80 ENDIF ENDIF ... IF Empty( cFontName ) hb_gtinfo( HB_GTI_FONTNAME, "Lusida console" ) ELSE hb_gtinfo( HB_GTI_FONTNAME, cFontName ) ENDIF IF Empty( nFontWidth ) hb_gtinfo( HB_GTI_FONTWIDTH, Int( ( hb_gtinfo( HB_GTI_DESKTOPWIDTH ) / nScreenH ) ) ) ELSE hb_gtinfo( HB_GTI_FONTWIDTH, nFontWidth ) ENDIF IF Empty( nFontHeight ) hb_gtinfo( HB_GTI_FONTSIZE, Int( ( ( hb_gtinfo( HB_GTI_DESKTOPHEIGHT ) - 64 ) / nScreenW ) ) ) ELSE hb_gtinfo( HB_GTI_FONTSIZE, nFontHeight ) ENDIF IF yPos != Nil hb_gtinfo( HB_GTI_SETPOS_XY, xPos, yPos ) ENDIF hb_gtinfo( HB_GTI_CLOSABLE, .F. ) IF lMaximize hb_gtinfo( HB_GTI_MAXIMIZED, .T. ) ENDIF hb_cdpSelect( "UTF8" ) и GET ввод уже будет utf8. Имея handle окна им можно управлять, скрывая, поднимая, располагая в нужных местах и уст. кол-во строк и ширину и т.д. Т.е. МиниГуи обеспечивает интерфейс RUSSIAN\EN + отображение тсб таблицы с charset языками, окно gtwvt ввод и просмотр de и др. языков, отличных от RUSSIAN
|
|
|
|
|
| |
Пост N: 291
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 19:29. Заголовок: SergKis пишет: Т.е...
SergKis пишет: цитата: | Т.е. МиниГуи обеспечивает интерфейс RUSSIAN\EN + отображение тсб таблицы с charset языками, окно gtwvt ввод и просмотр de и др. языков, отличных от RUSSIAN |
| SergKis пишет: цитата: | Повторю, MiniGui однобайтная, как и hb сборка с ней. |
| Т.е. нужно будет собирать часть программы в МиниГуи, а часть в другом харборе и писать обмен данными через базы? А насчет моей идеи что скажете? Просто интересно. Может, сразу забракуете, возможно, я о чем-то не подумал. Хотя бы теоретически это может быть реализуемо?
|
|
|
|
| постоянный участник
|
Пост N: 3531
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 19:40. Заголовок: rvu пишет Т.е. нужно..
rvu пишет цитата: | Т.е. нужно будет собирать часть программы в МиниГуи, а часть в другом харборе и писать обмен данными через базы? |
| Пример BASIC\MixedMode посмотрите, там два окна есть сразу, можете даже переключаться между ними (gtwin окно минимизировано). Т.е. в _MIXEDMODE_ одна прогр. MiniGui и два интерфейса, окно gtwin\gtwvt и окна GUI цитата: | А насчет моей идеи что скажете? Просто интересно. Может, сразу забракуете, возможно, я о чем-то не подумал. Хотя бы теоретически это может быть реализуемо? |
| Вы описали фонт как LV866 3-и языка, но работает он в unicode сборке.
|
|
|
|
| |
Пост N: 292
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 19:49. Заголовок: SergKis пишет: Прим..
SergKis пишет: цитата: | Пример BASIC\MixedMode посмотрите, там два окна есть сразу |
| Я смотрел с окном gtwvt. Мне непонятно, как эти данные программа минигуи будет обрабатывать, если она однобайтная.
|
|
|
|
| |
Пост N: 293
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 20:00. Заголовок: SergKis пишет: Вы о..
SergKis пишет: цитата: | Вы описали фонт как LV866 3-и языка |
| Нет, кодировка такая же, 1251, но есть особый фонт, где часть русских букв заменена. Пишется, допустим, font ‘MyArial’. А в нем по коду русской буквы выдается начертание немецкой.
|
|
|
|
| постоянный участник
|
Пост N: 3532
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 20:48. Заголовок: rvu пишет Нет, кодир..
rvu пишет цитата: | Нет, кодировка такая же, 1251 |
| Так и LV866 это RU866, где часть псевдогрфики заменена, а FR, LV, ... (26 языков европы) куда денете. Не проще ли hmg тексты перевести в unicod ? ВААЩЕ пробблем не будет.
|
|
|
|
| постоянный участник
|
Пост N: 3533
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 21:13. Заголовок: rvu пишет Мне непоня..
rvu пишет цитата: | Мне непонятно, как эти данные программа минигуи будет обрабатывать, если она однобайтная. |
| Так данные в utf8. Присваиваете программе hmg имя SET STATIONNAME TO "MAINPROC" для передачи данных по сообщению и передаете, если надо в hmg SendData( "MAINPROC", R2 ) // ф-я FN1 или пишете в раздельно открытый dbf поле в кодировке utf8 REPLACE U_FLD1 with R2 а в hmg передаете, что работа в wvt закончена, например SendData( "MAINPROC", 1 ) // типа код завершения в GUI окне получив команду можете для тсб сделать :Refresh() или :DrawSelect() - перепоказать таблицу или строку Не помню, оч. давно не работал с gtwvt, можно ли там поймать сообщение WM_COPYDATA, а то можно было бы организовать обмен командами, но в принципе и то что есть много что дает по мне, для работы в однобайтной среде
|
|
|
|
| постоянный участник
|
Пост N: 3534
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 21:24. Заголовок: PS Стандартные контр..
PS Стандартные контролы не покажут ничего с de, это ложится на окно gtwvt, тсб должна показать колонку по фонту с charset для DE oCol:bData := {|| hb_UtfToStr((oBrw:cAlias)->U_FLD1, "DEWIN") } oCol:hFont := GetFontHandle("FONT_DE") надо пробовать
|
|
|
|
| постоянный участник
|
Пост N: 3535
Зарегистрирован: 17.02.12
|
|
Отправлено: 03.12.20 21:30. Заголовок: PS2 SergKis пишет ил..
PS2 SergKis пишет цитата: | или пишете в раздельно открытый dbf поле в кодировке utf8 |
| Сори, это одна программа, можно передать в FN1 алиас и не надо повторного открытия
|
|
|
|
| |
Пост N: 294
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.12.20 21:30. Заголовок: SergKis пишет: а FR..
SergKis пишет: цитата: | а FR, LV, ... (26 языков европы) куда денете |
| Мне в ближайшее время актуальны только Германия и Франция. И то это не очень срочное дело. В идеале мне, конечно, нужен utf8, а это костыли какие-то. Но отдельные окошки в другой программе это тоже некий костыль и придется передавать кучу данных туда сюда. Но, это более универсальный способ, хотя, наверное, более трудоемкий. А есть надежда на появление utf8 в Минигуи? Это зависит от Григория?
|
|
|
Ответов - 125
, стр:
1
2
3
4
5
6
7
All
[только новые]
|
|