On-line: гостей 2. Всего: 2 [подробнее..]
АвторСообщение



Пост N: 40
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 29.08.19 05:19. Заголовок: IDE8


Можете на простом примере показать:
1. На примере TEXTBOX вводились символы UTF8
2. На примере LABEL - соответственно выводились

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 125 , стр: 1 2 3 4 5 6 7 All [только новые]


постоянный участник




Пост N: 2779
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.08.19 06:55. Заголовок: Новичок пишет Можете..


Новичок пишет
 цитата:
Можете на простом примере показать:
1. На примере TEXTBOX вводились символы UTF8
2. На примере LABEL - соответственно выводились


MiniGui не unucod-ная. Делаем казахский и русский фонты по аналогии
 
DEFINE FONT Arial FONTNAME App.FontName SIZE App.FontSize CHARSET 186 // BALTIC_CHARSET
DEFINE FONT ArialBold FONTNAME App.FontName SIZE App.FontSize BOLD CHARSET 186 // BALTIC_CHARSET
DEFINE FONT ArialRu FONTNAME App.FontName SIZE App.FontSize CHARSET 204 // RUSSIUN_CHARSET
DEFINE FONT ArialRuBold FONTNAME App.FontName SIZE App.FontSize BOLD CHARSET 204 // RUSSIUN_CHARSET
...
@ 10,10 TEXTBOX text_1 HEIGHT 24 WIDTH 200 ;
FONT 'ArialRu' SIZE 10 MAXLENGTH 30 ;
ON CHANGE ( This.label_1.Value := This.Value )

@ 40,10 LABEL label_1 WIDTH 200 HEIGHT 24 VALUE space(30) ;
FONT 'ArialRu'



Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1359
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 29.08.19 09:01. Заголовок: Если нужен UNICODE и..


Если нужен UNICODE и корректное использование utf8, используйте HwGUI ), собрать его надо с флагом UNICODE - раскомментировать соответствующие флаги в hwgui.hbp или в батниках.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 41
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 29.08.19 09:55. Заголовок: ясненько... спс, спе..


ясненько...
спс, сперва выкручусь фишками,
потом попробую HwGUI

или

давайте все вместе и дружно перейдем на utf32 и будем дальше плодить проблемы :)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 42
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 02.09.19 03:13. Заголовок: и вообще... все "..


и вообще...
все "сильные" страны мира всего
стараются пихать свои языки(в том числе алфавит) в многие народности...

у нас международный язык общения (евразийский континент - постсоветское пространство) РУССКИЙ (КИРИЛЛИЦА)

и Москва думает ток свою "геополитику", как в это время нам навязывают...
Английский, Французский, Китайский, ... уже и массово и Корейский языки (соответственно культура, ценности, миграция... РАБОТА!)

/*Далее балабольство*/

Ясно дело - поколение "80-х" - последнее поколение РУССИФИКАЦИИ, и с каждым годом остается НАС все меньше и меньше !
(*воспитали целое поколение людей "90-х" патриотов-НАЦИОНАЛИЗАЦИИ при распаде СССР, - которое с треском провалилось ! которые не нужны ни своей стране, а в чужой тупо - незнают МЕЖДУНАРОДНЫЕ языки общения, не говоря уже о культуре, ценностях, ... - короче приезжие "черножопые", в том числе, те же этнические славяне - ну само собой, сильные специалисты из этого списка - побелее - "СЕРОЖОПЫЙ" жук )
На смену прибывает НОВОЕ ПОКОЛЕНИЕ ("2000+") АнглоФранкоИспаноЧИРИКЧИРИКфикации, которые даже 2 слова на РУССКОМ связать не могут, не то что написать черным по белому !!! Помогают убыстрить ВОЛОНТЕРЫ с данных стран, причем большинстве БЕСПЛАТНО, или символически платно, но с условием что всякими ЛьГОТАМИ, ТРУДОУТРОЙСТВАМИ, и т.д. вернут в 100 раз больше (ха! в том и дело - восполняют!)

Короче ВАТИКАНздец ! С мертвым языком ЛАТЫНЬ - говорят ток в Ватикане (страна Ватикан в стране).
Будет МОСКВАздец ! С возможным мертвым языком РУССКИЙ - будут говорить ток в Москве (Страна Москва в стране) остальные на ЧИРИКЧИРИК с бывшими гражданами ЧИРИКстана, остальных малых народностей повторится история индейцев (ха! не предков, а потомков кочевников) - на прерии в Сибирь! - для эксперимента - человек(народы) в условиях ледникового периода :) - и всех обзовут Ярангами ! Ну правильно, у ЧИРИКОВ итак более 65000 иероглифов, нехватало еще столько же рисовать :)

И будут у этого народа Яранги много легенд, как в далекие года - их называли, к примеру (У окраины) - уОкраинцами -или коротко - Украинцами - защищали западные границы великой Московии, и напали тогда проклятые орды Варваров с железными конями, много дней и ночей сражались всей Московией - и победили ! Но пришел коварный невидимый враг в виде птиц голосистых, с болезнями птичьего гриппа, и покосила эта болезнь всю Московию, и бежали мы в края далекие и холодные...

По приколу - Русские национальные блюда - Пельмени (состав: тесто, жаренные кузнечики, заправленные соком из свежевыжатых червей, соль, вода, ...), Манты (те же пельмени, ток поболя размерчиком, и вместо кузнечиков, жаренные летучие мыши) и будут доказывать что сам Петр-I перед битвой сфарганил - и докажут ! :) И будда на кресте завещал своим потомкам из ЧИРИКстана - "За дИржаву РЮСЬ! За мИАтЮшкЮ зИмлЮ ! чирикчирик вообщем", и окажется Славяне, это не Славяне, а белое племя из ЧИРИКЧИРИКстана, и что США в далекие-далекие года до нашей эры разъединили племя ЧИРИКОВ !

О чём Я ?...


Ах да... !

/* Конец балабольства */

Может предложить кодовую страницу 1251 (866, ...), все-таки подправить - включить символы народностей СССР использующих кириллицу (их не особо много) в порядке алфавита на базе русского языка (33 буквы +, вложить между символами русского алфавита, и порядок следования символов русского языка сохранится, просто некоторые сдвинутся и других языков порядок следования обеспечен - для индексации), или к примеру создать страницу 1266 или своим именем обзови, будем помнить "Семенов-Тян-Шаньского или "Пржевальского" :). *Кстати,в Киргизии похоронен Пржевальский - около озера вроде.

В этом случае, многие Республики, опять вернутся на кириллицу. (да хотя бы что основа это тюрский язык, русский в том числе)
То есть если патриоты России, может хватит думать в рамках 33 букв?
Начни с этого проекта, создай кодовую страницу к примеру EUROASIAN, и тогда с 256 символами обойдемся, к примеру нах псевдографика ?
*я бы с удовольствием, поверь сильно занят элементарным выживанием :)

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3868
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.09.19 09:00. Заголовок: 1. Так у вас латиниз..


1. Так у вас латинизация уже, или только в процессе ?
2. Прицепить к харбору новую 8-ми битную кодировку, хоть кириллическую (расширение 1251), хоть латиницу, можно. Только скажите, какую, с сопоставлением с unicode.
Но если скажем minigui не поддерживает unicode, это для печати ничего не даст. Нужна еще соответствующим образом локализованная версия windows
В харборе есть свои средства печати в библиотеке hbwin, но там нет preview, что весьма неудобно.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2787
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.09.19 11:03. Заголовок: Pasha пишет Но если ..


Pasha пишет
 цитата:
Но если скажем minigui не поддерживает unicode, это для печати ничего не даст. Нужна еще соответствующим образом локализованная версия windows


VO то же не unicode (есть и локализованная латышская windows), но печать работает VOшная еще с версии 2.0 и работала с выводом программ clipper. Фонты на charsetах. Строка вывода превращается в массив слов\букв с соответствующим фонтом\Charset. Фонты, создаются парно (1251, 1257) с 1-9 штук (задавать можно извне перед печатью формы), 0 фонт базовый, осн. печать. Внутри ссылка по номеру фонта, т.е. слова\буквы - к номеру фонта (элемент массива). Кодировка базы LV866, кодировка текстовых файлов (всех) Utf8, Все тексты программ проектов, т.к. не было редактора с LV866, в utf8, все тексты контролов (надписи label) вынесены в ini, cfg файлы utf8 (можно в ресурсы, но соответствия перевода у клиента лат.\рус может быть разным) правят для конкретного клиента в ini\cfg как кому нужно. И сейчас вся печать для hb программ работает через VO-шную версии 2.7

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2788
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.09.19 11:07. Заголовок: PS hb программы - эт..


PS
hb программы - это MiniGui 2а варианта, основная переведена в unicod (v.m 2.07), вспомогательная текущая (работа как показывал в примере с Charset)

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3870
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.09.19 19:29. Заголовок: Латышский язык и лат..


Латышский язык и латышские кодовые страницы:

https://cloud.mail.ru/public/5Myf/3sT2eJtFJ

гляньте, нет ли косяков. В кодировку я добавил четыре отсутствующих в латышском алфавите латинских символа.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2789
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.09.19 21:03. Заголовок: Pasha Правка ..


Pasha
Правка Скрытый текст

Латышские гарумзиме (буквы) на месте. Все похоже.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3873
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.09.19 21:17. Заголовок: Спасибо, поправлю. Д..


Спасибо, поправлю.
Добавлю еще до кучи эстонский, и предложу в devlist

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2791
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.09.19 21:23. Заголовок: Pasha :sm36: Это ..


Pasha

Это снимет проблемы "чистых" языковых экранов, но смешанные данные это фонты с charset (основная работа) для gui

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 43
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 08:27. Заголовок: SergKis и интересно ..


SergKis и интересно и какая CHARSET для среднеазиатских языков ?
*к примеру для балтийских языков есть и кодовая страница 1257

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 44
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 08:56. Заголовок: Короче, нужна коррек..


Короче, нужна корректная работа UTF8.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 45
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 08:58. Заголовок: *Для среднеазиатских..


*Для среднеазиатских языков
- Казахский
- Киргизский
- Узбекский
- Таджикский
- Туркменский
на основе Кириллицы

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 46
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 09:05. Заголовок: на примере, в других..


на примере, в других системах:
достаточно указать charset=utf8
присобачить требуемый язык lang="код языка"
и всё

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2793
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.09.19 09:51. Заголовок: Новичок пишет Короче..


Новичок пишет
 цитата:
Короче, нужна корректная работа UTF8.


Посмотрел, кодовая страница казахского отсутствует в стандарте windows (Dos как бы есть) кроме Utf8. Тогда вариантов не так много, на мой взгляд (наш опыт)
- варианты WVT и базы Utf8
GUI
- Если dos кодировка актуальна (+ базы от clipper остаются как были), то hb unicode + ф-и перекодировки
extern char _bk_Uni2Dos_( TCHAR ch);
extern TCHAR _bk_Dos2Uni_( char ch);
+ перевод hmg на них, что в целом трудоемко
- взять HwGui unicode базы Utf8 и пробовать окна, контролы (browse) + xml настройки на кодировку
- работа ActivX с IE с движком http://w2ui.com/web/demo/grid или другие есть варианты
- Вариант, возможно, самый интересный) http://clipper.borda.ru/?1-3-0-00000628-000-0-0-1565852051 (не смотрел еще)
- Была HtmLayout.dll от https://terrainformatica.com (dll убрали в 2010 и остался только Sciter) движок html+js подобный язык, возможно заинтересует. На dll сделанные задачи (html страницы) работают до сих пор (загрузка grid таблицы ~10000-15000 записей) ~3-5 сек. Сервер Apache, к примеру, не нужен был для выхода по url на какой либо сайт

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2794
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.09.19 10:27. Заголовок: PS Вариант с WVT мож..


PS
Вариант с WVT можно использовать вполне, т.к. к примеру, через DosBox со смартфона работает.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 47
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 10:49. Заголовок: Нужно, хотя бы, чтоб..


Нужно, хотя бы,
чтобы на КОНТРОЛАХ отображались символы с UTF8

при подключении:
#xtranslate SET CODEPAGE TO UNICODE => Set (_SET_CODEPAGE, "UTF8")

REQUEST HB_CODEPAGE_UTF8
SET CODEPAGE TO UNICODE

а базы бы оставались на 866.

Создал бы правило соответствия некоторых символов UTF8 с некоторыми символами 866,
то есть при чтении с базы переводил бы эти символа 866 на UTF8 c выводом на контролы,
и при записи наоборот с UTF8 на 866 по соответствию. (*Для начала)

Конечно, далее возникал вопрос - preview, печать, индексация - ну думаю эти вопросы решили бы.
А при операциях со строками - производил бы без правил соответствия ( на 866) и после - результат переводил бы на UTF8

Следовательно, главный вопрос - ОТОБРАЗИТЬ НЕКОТОРЫЙ СИМВОЛ UTF8 НА КОНТРОЛАХ :)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 48
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 10:51. Заголовок: Для начала хватило б..


Для начала хватило бы и этого. Пока со временем проект не переведут на UTF8.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 49
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 11:12. Заголовок: что за WVT ?..


что за WVT ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2795
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.09.19 11:17. Заголовок: Новичок Попробуйте ..


Новичок
Попробуйте hb+HwGui unicode сборки и тестовую Utf8 базу и контролы (browse, button, label)
код текстов prg файла Utf8
Страница Utf8, для dbf codepage не ставить (данные будут как прочитаны)
Пример окна с контролами сбацать
Если пойдет, то можно делать перекодировку из 866 в utf8 и обратно и применять decode перед контролом и encode перед записью в dbf

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2796
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.09.19 11:27. Заголовок: Новичок пишет что з..


Новичок пишет
 цитата:
что за WVT ?


Драйвер экрана (не консоль). Посмотрите примеры в harbour\test поискав WVT в prg файлах.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2797
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.09.19 11:29. Заголовок: PS Возможно, alkresi..


PS
Возможно, alkresin, даст больше рекомендаций по HwGui, т.к. это его продукт

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1367
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 03.09.19 11:54. Заголовок: SergKis пишет: Возм..


SergKis пишет:

 цитата:
Возможно, alkresin, даст больше рекомендаций по HwGui, т.к. это его продукт


Если будут вопросы - обращайтесь.
Я использую юникодную сборку HwGUI в некоторых своих приложениях, проблем вроде нет.
Например, http://www.kresin.ru/down/notes.zip - программа для заметок, которой я активно пользуюсь. Там в тестовой безе несколько китайских иероглифов в тексте.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3875
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 03.09.19 19:38. Заголовок: Новичек Можно ли ис..


Новичок

Можно ли использовать 8-ми битную казахскую кодировку KZ-1048, или СТ РК 1048—2002 (это расширение cp1251). Насколько она распространена ?
Эта кодировка будет использоваться совместно с utf8

Проверьте пожалуйста казахский алфавит:

АӘБВГҒДЕЁЖЗИЙКҚЛМНҢОӨПРСТУҰҮФХҺЦЧШЩЪЫІЬЭЮЯ
аәбвгғдеёжзийкқлмнңоөпрстуұүфхһцчшщъыіьэюя

и название месяцев и дней недели:

Қаңтар
Ақпан
Наурыз
Сәуір
Мамыр
Маусым
Шілде
Тамыз
Қыркүйек
Қазан
Қараша
Желтоқсан

Жексенбі
Дүйсенбі
Сейсенбі
Сәрсенбі
Бейсенбі
Жұма
Сенбі

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 50
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 19:46. Заголовок: HwGUI, несколько во..


HwGUI,
несколько вопросов:
а) учтено работа с:
1.Excel
2.Word
3.XML
4.PDF
5.клиент-серверная
6.мобильная
для начала

в дальнейшем понадобятся и остальные:
Socket, SQlite, MySQl, Postgres,... и т.д.

б) сильно различаются от MiniGUI (синтаксис)
в) что используется PREVIEW (на печать; UTF8)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 51
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 03.09.19 19:55. Заголовок: *ну во-первых,я не к..


*ну во-первых,я не казах, и не с Казахстана
в данный момент стоит вопрос про среднеазиатский регион...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2798
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.09.19 22:11. Заголовок: Новичок пишет HwGUI,..


Новичок пишет
 цитата:
HwGUI,
несколько вопросов: ... для начала


Перечисленное относится не к hwgui, а hb, конкретнее подкаталог contrib, т.е. libы сборки hb (они же и в MiniGui).

 цитата:
сильно различаются от MiniGUI (синтаксис)


HwGui - объекты, синтаксис похож в плане препроцессорных команд ch файлов
Смотрите конкретно http://www.kresin.ru/
Ставьте, см. примеры и пробуйте.

На чем сделаны, работающие сейчас программы ?
Если clipper, может стоит перевести на hb unicode для начала ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2799
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.09.19 05:58. Заголовок: Новичок пишет в данн..


Новичок пишет
 цитата:
в данный момент стоит вопрос про среднеазиатский регион...


Хотелось бы знать реализацию работающих программ по кодовым страницам.
Если вы обратили внимание на содержимое lv.7z архива от Pasha, то увидели, что кодировка l_lv.c, l_lv.h utf8. Это значит, что кроме utf8 работы с языками, на hb можно сделать таблицы национальных языков, даже если их нет в стандарте windows. Более того, можно для hb unicode сделать Dos таблицы, как LV866, содержащей Лат., Рус., Англ. языки. То что я писал про ф-ии перекодировки Dos2Uni, Uni2Dos это атавизм из версии hb 2.0, перешедший в 3.2 на msvc 9 версии. При переходе на msvc 2017, мой товарищ, уже сделал LV866 по правилам и в стандарте hb. Правда я еще не переходил на работу с этой версией C. Так что вопрос от Pasha
 цитата:
Можно ли использовать 8-ми битную казахскую кодировку KZ-1048, или СТ РК 1048—2002 (это расширение cp1251). Насколько она распространена ?


по делу, т.к. если вас интересуют "среднеазиатские" языки, то кроме вас никто не скажет (не выяснит) правильные названия месяцев и дней дели для организации нац. таблиц.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 52
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 04.09.19 06:02. Заголовок: *использую Harbour M..


*использую Harbour MiniGUI (dbf-866; Windwows-1251; lang:RU) c Клипера давно иммигрировал

(просто больше времени уделял другим СУ*БД и языкам, на Harbour держу немало проектов, - не терять clipper'навыки, да и к данным проектам идеально подходит - самый главный плюс на моей практике- сделал проект на Harbour (причем очень быстро, подручными средствами) , установил и... прекрасно живет, и практически не жалуется, возникающие ошибки не критичны(в основном обходится с записью на лог ошибок ), специального администрирования не требуется, легковесная(+в 100-и, иногда 1000-и раз требуется меньше места), что там с ОС происходит - плевать - переустановили ОС(без моего участия) и дальше погнали - класс одним словом (кроме одного раза - когда в многопользовательском режиме, происходил сбой по разным причинам - то в базе DBF, посреди данных, впихивалась большая куча записей абракадабры - поставил контрольное поле корректности записи, и при загрузке автоматически удалял абракадабру при сбоях, в дальнейшем убрал эту функцию, видать этот баг исправили... или у нас энергоснабжение стабилизировалась )

*конечно последовательно, в конкретный момент встал вопрос UTF8 - и хотя бы решить малой кровью, без глобальных переделок

*возможно было бы легче, если бы изучил исходники и проект Harbour в целом изнутри - зная себя, перелопатил бы (перемудрил бы) во что-то другое, поэтому не лезу

"чем дальше лес, тем больше дров"...

Пришел к выводу:
- глобальная переделка займет слишком много времени + с учетом граблей (можно за это время перекинуть на другие БД и языки - потеря рентабельности)
- на данный момент лучше всего установить правила соответствия кодовых страниц - по-символьно (типа как Pasha предлагает), соответственно с функциями кодирования, декодирования

Опять же прихожу к выводу

- Требуется отображение символов UTF8 на контролах

*кто-нибудь, отключите проверку диапазона символов на контролах и вывода '?' вместо них или это происходит системно* (дык, тогда дайте понять этой системе - что он не прав ) ?
так как пробовал подключать шрифты поддерживающие UTF8, проверял на cmd chcp 65001 (консоль тянет UTF8 - *у мя windows 10, cp 1251, с подключенными всеми среднеазиатскими языками), эти же шрифты пробовал на других своих системах (отображает UTF8) и т.д., только здесь упорно рисует '?' ну ёпта (сорян мужики, до ассемблера руки не дошли - незнаю)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2800
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.09.19 06:18. Заголовок: Новичок пишет исполь..


Новичок пишет
 цитата:
использую Harbour MiniGUI (dbf-866; Windwows-1251; lang:RU)
Требуется отображение символов UTF8 на контролах


Повторю, MiniGui однобайтная, как и hb сборка с ней. И если собрать hb unicode можно, установив ключ UNICODE, то hmg C тексты надо переводить на работу в 2х вариантах, включая unicode. Это трудоемко и требует времени, особенно в отладке. Можете это сделать, помочь Григорию ... делайте. А так только HwGui имеет вариант сборки unicode
С нац. языками, как предлагает Pasha можно использовать и MiniGui

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 53
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 04.09.19 07:32. Заголовок: ладно попробую дедов..


ладно попробую дедовским способом)

подкл на Windows: Выполнить - eudcedit - откроется Редактор личных знаков
Далее, Правка - Копировать знак.. - Выберу любой символ - Поизголяюсь ! Получится новый символ
Далее, Файл - Связи шрифтов - Для всех шрифтов(по умолчанию) - Сохранить

Открываю Таблицу символов в самый низ там появится Все шрифты (Личные знаки), выберу этот символ - Выбрать - Копировать

Открываю программу Hb MiniGui, контроль TEXTBOX, жму Shift+Insert, и оп пля !!!

Этот символ ВСТАВЛЕН ! с кодом U+E000, и так далее...

Можно же.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 54
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 04.09.19 07:39. Заголовок: на Клиппере, типа та..


на Клиппере, типа также делал, рисовал символ псевдографикой, присваивал соответствие к некоторому неиспользуемому символу,
и на принтере(ранее матричные), также эту псевдографику впихивал (командами принтера через клиппер SAY...TO PRINT), и всё...
на тебе любые языки и символа)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2801
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.09.19 08:31. Заголовок: т.е. символы узбекск..


т.е. символы узбекского, казахского, киргизского, туркменского языков засунете в одну таблицу, сделаете таблицу перекодировки 866 -> <таблица>, месяцы, дни недели аналогично ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 55
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 04.09.19 09:06. Заголовок: я бы с самого начала..


я бы с самого начала так бы сделал,
тем более Windows API эти символа поддерживаются автоматически и отображаются корректно (практически везде на Windows)
просто по сравнению с DOS временами, здесь надо кучу шрифтов перелопатить(Arial, Courier, ...),
переопределить правила индексации (что приведет к замедлению),

а там Upper, Lower, дни недели, месяца, ... - особо не составит труда

ранее программы были обособленными, проблем не возникало, на текущий момент без стандартов, все время придется ручками допиливать,
ладно 1-2 задачи, но со временем этих задачи плодятся, и как раньше "а! пока сделаю так..." не прокатит.

Поэтому искал помощи, как-то связать с UTF8, чтобы уже забыть, не париться в будущем...

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 56
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 04.09.19 09:12. Заголовок: *ну что же, будем жд..


*ну что же, будем ждать - когда Hb + MiniGUI на UTF8 перепилят)
спс всем

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1368
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 04.09.19 09:23. Заголовок: Новичок пишет: HwGU..


Новичок пишет:

 цитата:
HwGUI,
несколько вопросов:
а) учтено работа с:
1.Excel
2.Word


Вы немного запутались. GUI-библиотеки ( Fivewin, HwGUI, MiniGUI, ... ) обеспечивают графический интерфейс. Работа с Word, Excel и пр. - это частный случай использования Харборовского модуля для OLE и COM. Вы можете работать с любыми (или почти с любыми) COM-объектами, будь то MS Office или 1С хоть из консольной программы, GUI здесь ни при чем.

 цитата:
3.XML


Вообще-то, аналогично предыдущему пункту - в Harbour есть модуль для XML. Но HwGUI содержит свою XML библиотеку, она, кстати, может использоваться отдельно, без остального функционала. Я писал ее, когда в Harbour своих средств для этого не было, а в HwGUI она потребовалась для дизайнера форм и отчетов.

 цитата:
5.клиент-серверная


Вы наверное, имеете ввиду поддержку клиент-серверных БД? Это опять не к GUI-библиотеке. Harbour-программа c HwGUI будет работать с клиент-серверными БД, поскольку это обеспечивают соответствующие Harbour-библиотеки.

 цитата:
6.мобильная


В смысле, под Андроид и iOs? Для Андроид, кстати, я частично портировал HwGUI - это называется HDroidGUI, но давно забросил - просто потому что сам не пользуюсь смартфонами.

 цитата:
Socket, SQlite, MySQl, Postgres,... и т.д.


То же самое, это все Harbour, он это поддерживает. Кстати, та программа для заметок использует именно sqlite.

 цитата:
б) сильно различаются от MiniGUI (синтаксис)


Синтаксис, связанный с реализацией GUI-элементов, естественно, отличается. Насколько - не могу сказать, я с синтаксисом MiniGUI мало знаком. Отличия, наверное, заметные, т.к. HwGUI основан на классах - так, как они реализованы в Harbour, а MiniGUI использует массивы и имитирует объектно-ориентированный синтаксис с помощью препроцессорных директив.

 цитата:
в) что используется PREVIEW (на печать; UTF8)


Preview в модуле печати есть. Utf8 там, конечно, поддерживается, как и везде в HwGUI.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2802
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 04.09.19 09:37. Заголовок: Новичок пишет исполь..


Новичок пишет
 цитата:
использую Harbour MiniGUI (dbf-866; Windwows-1251; lang:RU)


Т.е. сейчас национальных азиатских языков нет совсем (кроме русского) и ввода с клавиатуры языковых данных в MiniGui нет ?
Есть ли 8 битные таблицы национальных азиатских языков в работе и какие ? Или вы то же не в курсе ?

 цитата:
ну что же, будем ждать - когда Hb + MiniGUI на UTF8 перепилят)


Если и будут пилить, то в unicod

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3876
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 04.09.19 10:38. Заголовок: Новичок пишет: в да..


Новичок пишет:

 цитата:
в данный момент стоит вопрос про среднеазиатский регион...



Узбекские и туркменские товарищи еще в 90-е перешли на латиницу, так что их это не касается.
Нурсултан Абишевич недавно сделал такой же подарок Казахстану, ситуация там непонятна.
В Киргизии и Таджикистане до сих пор используется кириллица.
Для Казахстана есть свой стандарт кодировки для кириллицы, расширение 1251, но трех дополнительных киргизских букв там нет.
Есть еще какая-то кодировка Cyrillic Asiam или Windows PT CP 154, разработанная какой-то фирмой. Но насколько она распространена и используется ли вообще - сказать не могу.
Так что вопрос 8-ми битной кодировки остается открытым.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 369
Зарегистрирован: 29.05.10
ссылка на сообщение  Отправлено: 04.09.19 14:51. Заголовок: Новичок пишет: *ну ..


Новичок пишет:

 цитата:
*ну что же, будем ждать - когда Hb + MiniGUI на UTF8 перепилят)
спс всем


Да не надо ждать. Если делается не разовое латание дыр, не курсавая то используйте FiveWin.
Это проф.инструмент и поэтому не только графический интерфейс . Достаточно много своих функций и решений.
Харбор используется , как подмножество.

UTF8 поддерживается. Т.е. Хинди работает :)

несколько вопросов:
а) учтено работа с:
1.Excel
2.Word
3.XML
4.PDF

Учтена.

5.клиент-серверная
Да
6.мобильная
для начала

Не ясен вопрос. На всякий случай-есть сборки под все платформы. Если это планшет, телефон.... с виндой , то стандартный FW
поддерживает "палец" :)
Но сегодня гораздо больший интерес вызывае mod_harbor


в дальнейшем понадобятся и остальные:
Socket, SQlite, MySQl, Postgres,... и т.д.

Работает. Кстати это не только харбор. Точнее все гораздо смешнее , если хотите шире и глубже( это отностся и к перечисленному выше):)
Нужен нормальный бровс и он есть. Нет разницы с DBF идет работа или SQL. А можно эту разницу и учитывать ( формировать SQL запросы и т.д.)
так как синтасис это позволяет. Плюс различные доработки в этой области . Например чисто своя работа ( без сторонних библиотек) с
MariaDB / MySq . Кстати Языки, поддерживаемые сервером MySql:
по умолчанию английский, но они также могут отображаться на любом из нескольких других языков: чешский, датский, голландский, эстонский,
французский, немецкий, греческий, венгерский, итальянский, японский, корейский, норвежский, норвежский- Нью-Йорк, Польский, Португальский,
Румынский, Русский, Словацкий, Испанский или Шведский.

б) сильно различаются от MiniGUI (синтаксис)

Не сказал бы. FiveWin поддерживает несколько, поэтому можно выбрать для себя удобный.
На мой взгляд проще и прозрачней чем MiniGUI

в) что используется PREVIEW (на печать; UTF8)
Варианты есть разные начиная от встроенного генератора отчетов...

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1369
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 04.09.19 18:52. Заголовок: ММК пишет: Если дел..


ММК пишет:

 цитата:
Если делается не разовое латание дыр, не курсавая то используйте FiveWin.


Вообще-то, вы только-что сказали, что продукт труда большинства здесь присутствующих - это уровень "курсавых". Хочется надеяться, что это оговорка сгоряча, в пылу спора, но все же надо как-то следить за языком.

Если по сути, Fivewin, безусловно, солидный продукт с уже более чем 25-летней историей, и набор функций его Windows-версии, несомненно, выше, чем у всех других Harbour GUI-библиотек. Но окошки и "контролы" он делает те же самые и качество конечных приложений зависит не от используемого GUI, а от разработчика.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 277
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 28.11.20 12:50. Заголовок: SergKis пишет: ..


SergKis пишет:

 цитата:
DEFINE FONT Arial FONTNAME App.FontName SIZE App.FontSize CHARSET 186 // BALTIC_CHARSET
DEFINE FONT ArialBold FONTNAME App.FontName SIZE App.FontSize BOLD CHARSET 186 // BALTIC_CHARSET
DEFINE FONT ArialRu FONTNAME App.FontName SIZE App.FontSize CHARSET 204 // RUSSIUN_CHARSET
DEFINE FONT ArialRuBold FONTNAME App.FontName SIZE App.FontSize BOLD CHARSET 204 // RUSSIUN_CHARSET
...
@ 10,10 TEXTBOX text_1 HEIGHT 24 WIDTH 200 ;
FONT 'ArialRu' SIZE 10 MAXLENGTH 30 ;
ON CHANGE ( This.label_1.Value := This.Value )

@ 40,10 LABEL label_1 WIDTH 200 HEIGHT 24 VALUE space(30) ;
FONT 'ArialRu'




Если я так определю фонты -

DEFINE FONT Arial FONTNAME App.FontName SIZE App.FontSize CHARSET 204 // RUSSIUN_CHARSET
DEFINE FONT ArialLa FONTNAME App.FontName SIZE App.FontSize CHARSET 186 // BALTIC_CHARSET

то могу потом писать так? -

@ 40,10 LABEL LABEL_002 WIDTH 1000 VALUE probatxt FONT 'ArialLa'

У меня не получается. В probatxt загнал латвийское слово, на выходе получил обычный кракозябр вместо š.
Или чего-то не хватает или я вообще что-то делаю не так.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3512
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 28.11.20 14:30. Заголовок: rvu пишет В probatxt..


rvu пишет
 цитата:
В probatxt загнал латвийское слово, на выходе получил обычный кракозябр вместо š.


Надо убедиться, что в файле именно лат. кодировка одна из 2х (в hb добавились, ранее и не было)
HB_CODEPAGE_LV775 - Dos кодировка
HB_CODEPAGE_LVWIN - Windows кодировка
т.е.
REQUEST HB_CODEPAGE_SVWIN ; HB_CDPSELECT( "LVWIN" )
или
REQUEST HB_CODEPAGE_SVWIN ; HB_CDPSELECT( "LV755" )
и
AlertInfo(hb_memoread(".\proba.txt"))
дадут показ лат. слова или не дадут

Я забросил пробы с языками в тек. версии hmg и вернулся к старой unucode версии, т.к. в наших базах реально пишут фразы со смешанными словами на языках, т.е. часть на лат., часть на рус. - чего больше зависит от того, к примеру, для кого вых. форма.
Пример, ранее представленный, работал только с тсб, где фонты исп. по handle.
До Label у меня дело не дошло. Попробуйте вариант выше, по идее должен получится

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3513
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 28.11.20 14:35. Заголовок: SergKis пишет REQUES..


SergKis пишет
 цитата:
REQUEST HB_CODEPAGE_SVWIN


Сори, не исправил после copy+paste, надо
REQUEST HB_CODEPAGE_LVWIN
REQUEST HB_CODEPAGE_LV775 ; HB_CDPSELECT( "LV775" )

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 278
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 28.11.20 15:09. Заголовок: SergKis пишет: и ве..


SergKis пишет:

 цитата:
и вернулся к старой unucode версии



Т.е. она не на Минигуи?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 279
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 28.11.20 15:23. Заголовок: SergKis пишет: над..


SergKis пишет:

 цитата:
надо
REQUEST HB_CODEPAGE_LVWIN
REQUEST HB_CODEPAGE_LV775 ; HB_CDPSELECT( "LV775" )



Вот интересно, у меня программа с русскими надписями, написана в кодировке 1251, убрал то, что у меня было, вставил латвийскую, т.е. так:

REQUEST HB_CODEPAGE_LVWIN

*SET LANGUAGE TO RUSSIAN
*SET CODEPAGE TO RUSSIAN

И ничего не изменилось. Надо кодировку самого текста программы менять? Или что делать?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3514
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 28.11.20 16:48. Заголовок: rvu посмотрите i_la..


rvu
посмотрите i_lang.ch
#translate SET LANGUAGE TO RUSSIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_RU ; HB_LANGSELECT( "RU" ) ; InitMessages()
...
#translate SET LANGUAGE TO RUSSIAN => _HMG_LANG_ID := ' ' ; REQUEST HB_LANG_RUWIN ; HB_LANGSELECT( "RUWIN" ) ; InitMessages()
...
#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
для лат. надо аналогично
REQUEST HB_CODEPAGE_LVWIN, HB_LANG_LVWIN
...
_HMG_LANG_ID := ' '
HB_LANGSELECT( "LVWIN" )
HB_CDPSELECT( "LVWIN" )
...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3515
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 28.11.20 16:50. Заголовок: PS Это должна быть к..


PS
Это должна быть кодировка 1257

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 280
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 28.11.20 17:09. Заголовок: SergKis Ну хорошо, ..


SergKis

Ну хорошо, допустим, я сделаю программу в латвийской кодировке и смогу сделать в ней русский контрол. Хотя у меня задача в русской программе сделать иноязычные контролы, в первую очередь немецкий. Поэтому и старался в 1251 вписывать другие фонты.

SergKis пишет:

 цитата:
Все тексты программ проектов, т.к. не было редактора с LV866, в utf8



Может быть текст самой программы надо с 1251 в utf8 перевести? А вся контролы, в т.ч. и русский делать фонтами, как у вас?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3516
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 28.11.20 18:41. Заголовок: rvu пишет Может быть..


rvu пишет
 цитата:
Может быть текст самой программы надо с 1251 в utf8 перевести?


Не получится, скорее всего, hb+hmg однобайтные.
С лат. яз. не получается, т.к. валится Error BASE/1303 Argument error: __HB_LANGSELECT Args: [1] = C LVWIN.RU1251
Текст prg такой (файл "test.txt" utf-8 кодировка с BOM)
 
REQUEST HB_CODEPAGE_LVWIN

#include "hmg.ch"

FUNCTION Main()
Local cFile := "test.txt", cTxt, cBuf

//SET CODEPAGE TO RUSSIAN
//SET LANGUAGE TO RUSSIAN

//DEFINE FONT DlgFont FONTNAME "Tahoma" SIZE 16 CHARSET 186 // BALTIC_CHARSET

HB_LANGSELECT( "LVWIN" ) // валится тут
HB_CDPSELECT ( "LVWIN" )

cBuf := hb_memoread(cFile)
cTxt := hb_StrToUtf8(subs(cBuf, 4))

AlertInfo( cTxt )

Return

т.е. прочитать лат. яз текст такой (в utf-8)
NEMATERIĀLIE IEGULDĪJUMI
NEMAT.IEG.VĒRT.NORAKST.DAĻA
ĒKAS, BŪVES, ZEMES GABALI
PAMAATLĪDZEKĻI
перевести в lvwin и показать => не выходит.
Попробуйте с немецким
 
SET LANGUAGE TO GERMAN
SET CODEPAGE TO GERMAN
cBuf := hb_memoread(cFile)
cTxt := hb_StrToUtf8(subs(cBuf, 4)) // или текст на немецком не в utf-8 возьмите

AlertInfo( cTxt )

Если получится, тогда пробуйте с charset и russian установкой

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3517
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 29.11.20 18:40. Заголовок: SergKis пишет Если п..


SergKis пишет
 цитата:
Если получится, тогда пробуйте с charset и russian установкой


Вот что получилось
 
REQUEST HB_CODEPAGE_RU1251

#include "hmg.ch"

FUNCTION Main()
Local cFile := "test.ru", cTxt, cBuf
SET CODEPAGE TO GERMAN //RUSSIAN
SET LANGUAGE TO GERMAN //RUSSIAN
DEFINE FONT DlgFont FONTNAME "Tahoma" SIZE 16 CHARSET 204 // RUSSIAN_CHARSET
//DEFINE FONT DlgFont FONTNAME "Tahoma" SIZE 16
cBuf := hb_memoread(cFile)
cTxt := hb_Utf8ToStr(subs(cBuf, 4), "RU1251" )
//cTxt := hb_Utf8ToStr(subs(cBuf, 4) )
AlertInfo( cTxt + CRLF + "CDP = "+hb_CdpSelect() )
Return
Файл test.ru кодировка utf8 с BOM, содеримое
Привет !
Проба текста RU1251.


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 282
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 30.11.20 06:49. Заголовок: А чтобы показать нем..


А чтобы показать немецкий текст я должен написать что-то, типа этого? -
Пишу по аналогии:

Local cFileDE := "test.de", cTxtDE, cBufDE

cBufDE := hb_memoread(cFileDE)
cTxtDE := hb_Utf8ToStr(cBufDE,'DEWIN' )
AlertInfo(cTxtDE)

В файле test.de - über die Straße

Но это не работает. Вместо ü русский ь. Вместо ß русское Я.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 283
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 30.11.20 07:00. Заголовок: SergKis пишет: Може..


SergKis пишет:

 цитата:
Может быть текст самой программы надо с 1251 в utf8 перевести?

Не получится, скорее всего, hb+hmg однобайтные.



Текст программы записал в utf8.

А для чего у вас стоит REQUEST HB_CODEPAGE_RU1251?
Изменил на REQUEST HB_CODEPAGE_DEWIN, ничего не изменилось.


Вообще такое ощущение, что программа у меня только с русским языком дружит:

SET CODEPAGE TO SPANISH
SET LANGUAGE TO SPANISH
AlertInfo(hb_Utf8ToStr('Ññ',"ESWIN")) // неправильно показывает
AlertInfo(hb_Utf8ToStr('Проба текста',"RU1251")) // всё работает

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3518
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 30.11.20 10:15. Заголовок: rvu пишет Текст прог..


rvu пишет
 цитата:
Текст программы записал в utf8.


hb в hmg поставке однобайтный, думаете он понимает prg в utf8 ?
У меня тексты языковые вынесены вне текстов prg и в кодировке utf8, вся работа в dos кодировке lv866, содержит 3и языка.
До редактора hdedit (своя сборка с lv866) prg были для akelpad в utf8, прогр. проекта для сборки перекодировала в однобайтный вариант (в каталог сборки) и потом работает сборка hb. Такая схема с версии hb 2.0 работала. В hb 3.2 сборка unicode понимает, вроде, prg с utf8 и bom, а однобайтная не знаю, может и не понимать, т.к. надо осн. язык перекодировки указывать.

 цитата:
Вообще такое ощущение, что программа у меня только с русским языком дружит:


Вроде как система должна быть на этом языке (DEWIN). Такая х...та с работой в однобайтных системах была всегда

 цитата:
Т.е. она не на Минигуи?


Рабочая наша версия это hb 3.2 unicode + MiniGui 4.07 (версия 2012 г) unicode - товарищ по работе перевел.
hb_cdpSelect("LV866") ; hb_setTermCP("LV866")
такая установка во всех function main
Немецкий не подключали, не нужен, а EN, LV, RU в пост. работе

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3519
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 30.11.20 10:24. Заголовок: PS "MiniGui 4.07..


PS
"MiniGui 4.07 (версия 2012 г) unicode" переведены только контролы, печать и др. не переводились, т.к. печать, pdf, mail, excel остались в VO 2.7, т.к. она также в unicode переведена была товарищем ~ в 2003 г.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3520
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 30.11.20 12:21. Заголовок: PS2 В том примере с ..


PS2
В том примере с
 
DEFINE FONT Arial FONTNAME App.FontName SIZE App.FontSize CHARSET 186 // BALTIC_CHARSET
DEFINE FONT ArialBold FONTNAME App.FontName SIZE App.FontSize BOLD CHARSET 186 // BALTIC_CHARSET
DEFINE FONT ArialRu FONTNAME App.FontName SIZE App.FontSize CHARSET 204 // RUSSIUN_CHARSET
DEFINE FONT ArialRuBold FONTNAME App.FontName SIZE App.FontSize BOLD CHARSET 204 // RUSSIUN_CHARSET

я попробовал в тсб показать файл в dos lv866 кодировке, система и prg RU1251 и BALTIC_CHARSET у фонта - получилось показать, ввод с клавиатуры лат. языка и др. контролы (наверно не поймут) я не пробовал. По идее система и prg DEWIN и RUSSIAN_CHARSET тсб так же отработает, а остальные контролы скорее нет, чем да. Т.е. язык системы ставим в hmg и работаем, как то так должно быть.
Для вашей ситуации надо как минимум hb в unicode + VWT или VWG (тут были контролы windows какие то) и prg, базы в utf8 или взять HwGui собрать unicode вариант, там было и пробовать

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 284
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 01.12.20 11:59. Заголовок: Спасибо за советы! Б..


Спасибо за советы! Буду пробовать дальше.

SergKis пишет:

 цитата:
ввод с клавиатуры лат. языка и др. контролы (наверно не поймут) я не пробовал.



Не понял, у вас же работают с двумя языками. Я думал, их и вводят в какие-то поля при необходимости. Но у вас вообще беда, ведь могут быть тексты на смеси языков, как вы с ними без utf работаете не представляю.

SergKis пишет:

 цитата:
базы в utf8



Базы-то у меня изначально в utf.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3521
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 01.12.20 19:25. Заголовок: rvu пишет Не понял, ..


rvu пишет
 цитата:
Не понял, у вас же работают с двумя языками. Я думал, их и вводят в какие-то поля при необходимости


Да, есть базы, где языки разделены (условно) по разным полям, но никто не мешает вводить смешано в одно поле. Для примера взял именно такую базу.
1. Проверить тсб (это не стандартный контрол windows) и он правильно отобразил строки с разным языком.
2. Т.к. в hmg 4.07 тсб версии 7.0, а в тек. версии 9.0 и более стабильно работающая и др. контролы более продвинуты, были мысли использовать интерфейс для windows лат. версии LVWIN кодировку (1257), для windows рус. версии RUSSIAN (1251). Перевод на unicod тек. версии, были попытки, но слишком много текста стало и не успевали за версией, т.е. отложили на когда то.

 цитата:
Но у вас вообще беда, ведь могут быть тексты на смеси языков, как вы с ними без utf работаете не представляю.


Вообще то все оч. просто dbf как были в clipper LV866 dos кодировка (это аналог ru866, в которой некоторые символы псевдографики заменены лат. буквами) так и остались (для VO так же все). В hb unicode сборку добавлена такая таблица в список codepage по правилам harbour. В windows language 3и языка (можно больше). Др. язык можно в базу lv866 писать как utf8, если что

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 285
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 02.12.20 22:46. Заголовок: Нашел пример с порту..


Нашел пример с португальским меню:

C:\MiniGUI\SAMPLES\Advanced\DriveMapping\

У меня оно неверно показывается.

Язык, естественно в тексте меняю. Там английский стоит по умолчанию, а португальский закомментарен.
Всячески игрался с настройками, ничего не вышло. Попробовал сделать ошибки и посмотреть сообщения. Вообще чуднО выдает.

Вместо parametros пишет parŕmetros.

В примере:

C:\MiniGUI\SAMPLES\Applications\Biorhythm\

польский, португальский, словенский неверно показываются.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3523
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.20 23:23. Заголовок: rvu пишет польский, ..


rvu пишет
 цитата:
польский, португальский, словенский неверно показываются.


Все правильно так и должно быть у вас русский windows и др. языки будут искажаться на ерунду.
MiniGui (hmg) однобайтная система программирования (не unicod контролы). Я, наверно, плохо объяснил.
Для каждого языка должна быть система windows на этом языке и в программе уст. язык системы windows, т.е.
Для польского система windows должна быть на польском и в hmg prg файле ставим работу на польском.
Для португальского система windows должна быть на португальском и в hmg prg файле ставим работу на португальском.
Для немецкого система windows должна быть на немецком и в hmg prg файле ставим работу на немецком.
И т.д.
Тогда будет в программе английский и язык системы.
Тсб не стандартный контрол windows (самопал), потому в нем получилось отображение языка по hardset, но ввод данных не пройдет.
Если бы hmg была переведена в unicod и hb собран unicode было бы все ok для такого комплекта. Повторю

 цитата:
Для вашей ситуации надо как минимум hb в unicode + VWT или VWG (тут были контролы windows какие то) и prg, базы в utf8 или взять HwGui собрать unicode вариант, там было и пробовать



Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 286
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 02.12.20 23:44. Заголовок: SergKis пишет: у ва..


SergKis пишет:

 цитата:
у вас русский windows и др. языки будут искажаться на ерунду



Я нечто подобное подозревал:

rvu пишет:

 цитата:
Или чего-то не хватает или я вообще что-то делаю не так.



Если я свою программу скопирую на немецкую винду, то там будут кракозябры? Да, это очевидно. А если там в винду русский текст добавлен?
Как-то пришлось под немецкой виндой что-то делать, но я тогда с консолью работал, 866 страницей, что-то менял в настройках, потом отдавая компьютер хозяину, вернул эти изменения на место. А страница 1251 у него и так есть. Вот если я у себя добавлю в винду, например, польский язык, я увижу их корректный текст в программе?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост 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 (как минимум)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3525
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 00:18. Заголовок: PS Лат. windows - эт..


PS
Лат. windows - это все сообщения, меню, кнопки, титулы ... все на латышском (веселуха еще та, т.к. могут отличаться от EN вариантов)

Спасибо: 0 
ПрофильЦитата Ответить





Пост 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, разве они потом не добавляют русский, как я польский (или немецкий) хотел для примера добавить?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост 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 - выбранный язык текста

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 289
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 03.12.20 12:39. Заголовок: Т.е. это "Язык п..


Т.е. это "Язык программ не поддерживающих Юникод"?
Я могу выбрать немецкий, тогда у меня всё в Минигуи на немецком заработает, но вместо русского?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3527
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 13:02. Заголовок: rvu пишет Я могу выб..


rvu пишет
 цитата:
Я могу выбрать немецкий, тогда у меня всё в Минигуи на немецком заработает, но вместо русского?


Да. Только тсб можно исп. для отображения с исп. chardset, т.е. для DE надо знать номер charset, что бы исп. с RUSSIAN cdp.
Примечание для GUI интерфейса. Если исп. unicode HwGui, там таблицы это как BROWSE в hmg и если вам нужны многострочные строки, заголовки, подножия, superheader, то этого там нет

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3528
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 13:47. Заголовок: PS Есть пример в мин..


PS
Есть пример в минигуи с _MIXEDMODE_ с запуском окна
ShowConsole( cConsoleTitle )
...
HideConsole( cConsoleTitle )
посмотрите, может под ним можно организовать ввод DE данных.
Я не смотрел за ненадобностью, просто вспомнил про _MIXEDMODE_

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3529
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 15:22. Заголовок: PS2 Посмотрел пример..


PS2
Посмотрел пример BASIC\MixedMode, в build.bat вместо gtwin исп. gtwvt -> получил окно wvt.
Так понимаю, что редактор hbedit можно встроить в такие окна (gtwin, gtwvt) и работать с текстами в разных кодировках, потом писать тексты можно в dbf

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 290
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 03.12.20 18:45. Заголовок: Подумалось, а если с..


Подумалось, а если сделать свой шрифт? Взять готовый фонт и заменить какие-нибудь русские буквы немецкими. Далее подключить этот фонт к винде и указывать его в нужных контролах. Работать с ним, как с обычным русским текстом, для харбора и для базы он таким и будет, только показываться будут символы из особого фонта.
Заменить русские буквы, которые на тех клавишах, что на немецкой клавиатуре. Можно сделать и виртуальную клавиатуру для ввода этих знаков.
Как такая идея? Реализуема? Хочу сразу много критики, чтобы время впустую не тратить.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост 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

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 291
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 03.12.20 19:29. Заголовок: SergKis пишет: Т.е...


SergKis пишет:

 цитата:
Т.е. МиниГуи обеспечивает интерфейс RUSSIAN\EN + отображение тсб таблицы с charset языками, окно gtwvt ввод и просмотр de и др. языков, отличных от RUSSIAN



SergKis пишет:

 цитата:
Повторю, MiniGui однобайтная, как и hb сборка с ней.



Т.е. нужно будет собирать часть программы в МиниГуи, а часть в другом харборе и писать обмен данными через базы?

А насчет моей идеи что скажете? Просто интересно. Может, сразу забракуете, возможно, я о чем-то не подумал. Хотя бы теоретически это может быть реализуемо?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3531
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 19:40. Заголовок: rvu пишет Т.е. нужно..


rvu пишет
 цитата:
Т.е. нужно будет собирать часть программы в МиниГуи, а часть в другом харборе и писать обмен данными через базы?


Пример BASIC\MixedMode посмотрите, там два окна есть сразу, можете даже переключаться между ними (gtwin окно минимизировано). Т.е. в _MIXEDMODE_ одна прогр. MiniGui и два интерфейса, окно gtwin\gtwvt и окна GUI

 цитата:
А насчет моей идеи что скажете? Просто интересно. Может, сразу забракуете, возможно, я о чем-то не подумал. Хотя бы теоретически это может быть реализуемо?


Вы описали фонт как LV866 3-и языка, но работает он в unicode сборке.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 292
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 03.12.20 19:49. Заголовок: SergKis пишет: Прим..


SergKis пишет:

 цитата:
Пример BASIC\MixedMode посмотрите, там два окна есть сразу



Я смотрел с окном gtwvt. Мне непонятно, как эти данные программа минигуи будет обрабатывать, если она однобайтная.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 293
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 03.12.20 20:00. Заголовок: SergKis пишет: Вы о..


SergKis пишет:

 цитата:
Вы описали фонт как LV866 3-и языка



Нет, кодировка такая же, 1251, но есть особый фонт, где часть русских букв заменена. Пишется, допустим, font ‘MyArial’.
А в нем по коду русской буквы выдается начертание немецкой.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3532
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 20:48. Заголовок: rvu пишет Нет, кодир..


rvu пишет
 цитата:
Нет, кодировка такая же, 1251


Так и LV866 это RU866, где часть псевдогрфики заменена, а FR, LV, ... (26 языков европы) куда денете.
Не проще ли hmg тексты перевести в unicod ?
ВААЩЕ пробблем не будет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост 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, а то можно было бы организовать обмен командами, но в принципе и то что есть много что дает по мне, для работы в однобайтной среде

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост 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")
надо пробовать

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3535
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 21:30. Заголовок: PS2 SergKis пишет ил..


PS2
SergKis пишет
 цитата:
или пишете в раздельно открытый dbf поле в кодировке utf8


Сори, это одна программа, можно передать в FN1 алиас и не надо повторного открытия

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 294
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 03.12.20 21:30. Заголовок: SergKis пишет: а FR..


SergKis пишет:

 цитата:
а FR, LV, ... (26 языков европы) куда денете



Мне в ближайшее время актуальны только Германия и Франция. И то это не очень срочное дело.
В идеале мне, конечно, нужен utf8, а это костыли какие-то.
Но отдельные окошки в другой программе это тоже некий костыль и придется передавать кучу данных туда сюда. Но, это более универсальный способ, хотя, наверное, более трудоемкий.

А есть надежда на появление utf8 в Минигуи? Это зависит от Григория?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3536
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 22:13. Заголовок: rvu пишет А есть над..


rvu пишет
 цитата:
А есть надежда на появление utf8 в Минигуи? Это зависит от Григория?


Наверно, больше от энтузиастов, т.к. надо внимательно прошерстиь C тексты, сделать изменения констант '...' на _TEXT('...') выделение памяти где было на n байт увеличить n*2 и может еще, что, подзабыл уже (не сишник и делал это давно), но главное протестировать, т.к. пропущенное сразу не увидишь.

 цитата:
а это костыли какие-то


Так они были в window всегда после dos clipper времен до hb unicode реализаций (это 2009 г появилась hb 2.0).

 цитата:
Но, это более универсальный способ, хотя, наверное, более трудоемкий.


Если работаете с memo полями, то их, как правило дают править\вводить в отдельном wvt окне, тут это может быть сделано также, т.е. в тсб показываете часть текста в строке, а все в окне ввода\корректировке. Ввод\корректировку можно всю перенести на gtwvt окно - как в clipper (без обработки мышинных событий, это совсем просто) ввод всех данных записи из тсб и запись этих значений в dbf, SetKey(...) в gtwvt никто не отменял. Есть еще gtwvg (в contrib hb) с gui элементами (toolbar, button, label ...) но такой либы в hmg нет, можно было бы их (контролы) исп. на доп. окне. - веселее было бы. Но надо пробовать, будут ли hmg ON KEY ... ACTION ... пересекаться с SetKey(...) gtwvt и все остальное

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3537
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.20 22:26. Заголовок: PS на окне gtwvt мож..


PS
на окне gtwvt можно задействовать и tbrowse на dbf, думаю будет работать и на поля utf8 при cdp utf8 без лишних ф-й перекодировки hb_utf8ToStr(..., ""DEWIN)

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 295
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 04.12.20 00:57. Заголовок: Спасибо! Буду что-ни..


Спасибо! Буду что-нибудь пробовать.

SergKis пишет:

 цитата:
Наверно, больше от энтузиастов, т.к. надо внимательно прошерстиь C тексты



Энтузиастов со знанием C?

SergKis пишет:

 цитата:
но главное протестировать, т.к. пропущенное сразу не увидишь



Это, наверное, в процессе работы тестируется? Или по определенному плану все функции?
Но собирает это всё вместе Георгий? То есть без его энтузиазма ничего не выйдет.
Сначала надо вообще определить, кому и насколько это нужно.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 297
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 04.12.20 15:19. Заголовок: SergKis, да, вы прав..


SergKis, да, вы правы, самое разумное делать еще одно уникодное приложение и соединять его с основной программой. Чем больше думал насчет своей идеи о фонтах, тем меньше она мне нравилась. На одни костыли надо другие делать, дичь какая-то получается. Но хоть узнал про смешанные кодировки, это было интересно.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 304
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 06.01.21 18:37. Заголовок: SergKis пишет: Рабо..


SergKis пишет:

 цитата:
Рабочая наша версия это hb 3.2 unicode



А где ее взять? Решил попробовать с консольными уникодными программами поиграться.
А если с каким-нибудь примером вообще шикарно было бы.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3558
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 06.01.21 21:13. Заголовок: rvu пишет А где ее в..


rvu пишет
 цитата:
А где ее взять?


Собрать исходники hb в unicode, есть параметр сборки _UNICODE_, но лучше гляньте, как пишется точно, по памяти могу ошибиться

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7135
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 23.11.21 20:22. Заголовок: Pasha пишет: Можно ..


Pasha пишет:

 цитата:
Можно ли использовать 8-ми битную казахскую кодировку KZ-1048, или СТ РК 1048—2002 (это расширение cp1251). Насколько она распространена ?

Проверьте пожалуйста казахский алфавит:


Мне наверное потребуется эта кодировка в МиниГуи.
Как подключить её к однобайтовой текущей версии ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7141
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.11.21 20:35. Заголовок: https://serj129.ucoz..


https://serj129.ucoz.ru/publ/kodirovki_kazakhskogo_jazyka/1-1-0-13#L5.2.1.5

5.2.1.5 Кодировка KZ-1048

Этот долгожданный официально принятый 8-битовый стандарт кодировки
казахского языка приведен в Таблице A.

стандарта почему-то в первую очередь пожертвовали совместимостью с
украинским и белорусским языками, заодно и сербским и македонским, хотя
мест, занимаемых сербско-македонскими буквами вполне хватало для
размещения всех казахских букв, а совместимость с украинцами и
белорусами можно было сохранить - все же связи с этими странами большие
да и украинцев в Казахстане довольно много. В результате места части
сербско-македонских букв остались не к селу не к городу... Такое
впечатление что авторы стандарта на продумали так тщательно, как
следовало бы (наверно времени не хватило). Ну, вот теперь будем жить с
таким стандартом...

Кодировка стараниями А.Веремеева из Oracle (спасибо ему!)
зарегистрирована в IANA.org под названием KZ-1048. Ранее использованное
в данной статье название кодировки RK1048, зарегистрированно как
синоним (alias).

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1817
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 26.11.21 20:47. Заголовок: Andrey пишет: Ну, в..


Andrey пишет:

 цитата:
Ну, вот теперь будем жить с
таким стандартом...


Андрей, во первых на не привыкать. Во вторых, это первый блин... уверен дальше их будет много разных и "вкусных"

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7142
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.11.21 20:53. Заголовок: Haz пишет: Андрей, ..


Haz пишет:

 цитата:
Андрей, во первых на не привыкать. Во вторых, это первый блин... уверен дальше их будет много разных и "вкусных"


Да нет, это нормальный и последний стандарт для казахского.
Я кучу сайтов пересмотрел.
Пишу об этом, потому что надо мне свою прогу на казахский делать.
Перевод меню и базу.
А этот казахский базируется на RU1251 - очень удобно, тексты не нужно в UTF8 переводить.

На украинский я менюшки перевел (сделал отдельный файл МояПрога.ua, я писал об этом здесь на форуме)
и осталось базу перевести.
Не всё так быстро получается.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7491
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.11.21 21:12. Заголовок: Andrey пишет: Пишу ..


Andrey пишет:

 цитата:
Пишу об этом, потому что надо мне свою прогу на казахский делать.


Хорошо не на китайский или грузинский :)

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 4053
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.12.21 08:08. Заголовок: Перенесу-ка я обсужд..


Перенесу-ка я обсуждение сюда.
Сделал кодировку для kz-1048 (еще два года назад), Андрей сейчас ее тестирует. Мы общаемся по почте
Возникла проблема: при установленной KZWIN (так я ее назвал) HMG TSBrowse неправильно показывает казахские символы
Андрей грешит на KZWIN, но причина вовсе не в ней.

Можно взять любой текст в этой кодировке (или самому сделать текстовый файл), открыть его блокнотом.
Символы будут показываться неправильно
Поиграться со шрифтами, поменять charset (набор символов). Ну нет в стандартных шрифтах charset для kz-1048
По-видимому, надо искать соответствующий шрифт
Вот нашел ссылку, где курят эту тему:

https://vse.kz/topic/39374-problemi-s-kazahskimi-shriftami/page-12

Еще вариант: смотреть в сторону полной уникодности

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3953
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 08:33. Заголовок: Pasha пишет смотреть..


Pasha пишет
 цитата:
смотреть в сторону полной уникодности


Без вариантов, именно так
Андрей мне тоже прислал вариант txt с языками, я его в ini превратил и сделал пример unicode
Тут смотреть https://TransFiles.ru/s3v4w
LV - правильно, остальные языки надо проверить

gfilatov2002 MiniGuiVersion() выдает ANSI, а надо UNICODE

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7153
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.12.21 10:45. Заголовок: Pasha пишет: Символ..


Pasha пишет:

 цитата:
Символы будут показываться неправильно
Поиграться со шрифтами, поменять charset (набор символов). Ну нет в стандартных шрифтах charset для kz-1048
По-видимому, надо искать соответствующий шрифт


Т.е. этот вариант может прокатить, если иметь рядом с программой нужные шрифты и
подгружать их в свою прогу ?
Фигово, но хоть можно будет работать.
Вот нашёл https://life.ansor.info/kazakh_shrift/
Подойдут такие ?

Pasha, надо бы как у всех языков сделать, чтобы не путаться:
hb_cdpSelect( "KZWIN" ) 
HB_LANGSELECT("KZWIN")


hb_cdpSelect( "DEWIN" ) 
HB_LANGSELECT("DEWIN")


Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1954
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 02.12.21 11:16. Заголовок: SergKis пишет: Mini..


SergKis пишет:

 цитата:
MiniGuiVersion() выдает ANSI, а надо UNICODE


У меня этот пример, собранный Unicode сборкой, выдал все правильно:

 цитата:
ver. = Harbour MiniGUI Extended Edition 21.11.0 (32-bit) UNICODE
v.m. = 21.11.0
numba = 211100

CODEPAGE = UTF8
LANGSELECT = EN


и размер экзешника у меня больше (2 287 104 байт) против вашего (2 226 176 байт)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3954
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 11:56. Заголовок: gfilatov2002 Был не..


gfilatov2002
Был не прав, по инерции поправил путь в minigui.cfg на MiniGuiBcc58
MG_ROOT=c:\miniguiBcc58Unicode
исправил, все стало на место


Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 4054
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.12.21 12:18. Заголовок: Andrey пишет: Т.е. ..


Andrey пишет:

 цитата:
Т.е. этот вариант может прокатить, если иметь рядом с программой нужные шрифты и
подгружать их в свою прогу ?
Фигово, но хоть можно будет работать.
Вот нашёл https://life.ansor.info/kazakh_shrift/
Подойдут такие ?



Нужен не просто шрифт с казахскими символами, они я думаю есть и в стандартных шрифтах.
Нужен шрифт с charset для кодировки KZ-1048


 цитата:
Pasha, надо бы как у всех языков сделать, чтобы не путаться:

hb_cdpSelect( "KZWIN" )
HB_LANGSELECT("KZWIN")


hb_cdpSelect( "DEWIN" )
HB_LANGSELECT("DEWIN")



KZWIN я переименую в KZ1048, так думаю будет правильнее
Языковый модуль в харборе именуется двумя символами, так как он не привязан к кодировке
Для совместимости есть возможность указывать то же имя, что и для кодировки

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7154
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.12.21 13:15. Заголовок: Pasha пишет: Латышс..


Pasha пишет:

 цитата:
Латышский язык и латышские кодовые страницы:
https://cloud.mail.ru/public/5Myf/3sT2eJtFJ
гляньте, нет ли косяков. В кодировку я добавил четыре отсутствующих в латышском алфавите латинских символа.



Pasha пишет:

 цитата:
Спасибо, поправлю.
Добавлю еще до кучи эстонский, и предложу в devlist



А уже добавлены эти языки в Харбор ?

И ещё вопрос по белорусской кодовой странице - когда будет в Харборе ?

Ну и до кучи тогда и добавить казахский язык, как есть.
А когда потребуется будем допиливать...

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 4055
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.12.21 13:21. Заголовок: Еще не добавлены, но..


Еще не добавлены, но у тебя же они все есть
Сейчас ты их напрямую указываешь при сборке проекта, а так они булут в библиотеках hbang и hbcpage, вот и вся разница

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7155
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.12.21 13:28. Заголовок: Pasha пишет: Еще не..


Pasha пишет:

 цитата:
Еще не добавлены, но у тебя же они все есть


Да это сколько тащить лишних модулей надо то...
И в библиотеку Григорию добавлять примеры будет сложно, много лишних модулей.
Белорусский язык есть, а кодовых страниц нет.
В пример Tsb_5Win добавил работу с 4 языками и не хотелось бы туда тащить С-модули.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 4056
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 02.12.21 13:48. Заголовок: Пожалуюсь вот. Как с..


Пожалуюсь вот. Как сложно стало жЫть :(

Давно не заходил в groups.google.com. Авторизуюсь, ввожу емайл и пароль
Гугл говорит: сомневаюсь в тебе, мил человек, подтверди себя. Послали тебе письмо с кодом

Захожу в майл.ру, авторизуюсь. Майлру говорит: сомнительный ты какой-то, подтверди свой номер телефона.
Подтверждаю, пускает. Даю гуглю код из письмя

Гугль говорит: хорошо мол, но все равно я в тебе сомневаюсь, давай телефон, вышлю смс с кодом
Даю телефон, получаю смс, кормлю его гуглю.
Вижу свои группы и наслаждаюсь
В сухом остатке гугль из меня выцепил номер телефона

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3955
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 14:19. Заголовок: Как просил Андрей, п..


Как просил Андрей, просмотр, простой, вставил в пример
Тут https://TransFiles.ru/u7w3o

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3956
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 15:48. Заголовок: Как просил Андрей, п..


Как просил Андрей, просмотр, чуть сложней, вставил в пример, на базе ф-ии _TBrowse()
Тут смотрим https://TransFiles.ru/ju3qz

PS
Пропустил удаление dbf (добавляет записи всегда)
 
fErase( App.Cargo:cDbf+".dbf" )


IF ! hb_FileExists(App.Cargo:cDbf+".dbf")


Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1955
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 02.12.21 16:25. Заголовок: SergKis пишет: прим..


SergKis пишет:

 цитата:
пример, на базе ф-ии _TBrowse()


Пример - понравился, добавлю его в unicode сборку

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3957
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 16:33. Заголовок: gfilatov2002 пишет д..


gfilatov2002 пишет
 цитата:
добавлю его в unicode сборку


лучше чуть поправленный вариант. Тут https://TransFiles.ru/jwujq

PS
ф-ю oIniData( cIni, lMacro, lUtf8, cRazd ) может в lib к классу положить, что бы не таскать

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1956
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 02.12.21 16:45. Заголовок: SergKis пишет: лучш..


SergKis пишет:

 цитата:
лучше чуть поправленный вариант


Ok

SergKis пишет:

 цитата:
ф-ю oIniData( cIni, lMacro, lUtf8, cRazd ) может в lib к классу положить


Мне кажется, что ее можно заменить с помощью #xtranslate

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3958
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 16:50. Заголовок: gfilatov2002 пишет М..


gfilatov2002 пишет
 цитата:
Мне кажется, что ее можно заменить с помощью #xtranslate


Не очень понимаю, что лучше 4 #xtranslate и следить, что бы не потерялись или ф-ю

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3959
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.12.21 19:55. Заголовок: gfilatov2002 Поборо..


gfilatov2002
Поборолся еще немного с примером, добавил в ini вкл. edit и кол-во строк в отображении Memo поля
Edit = .T.
MemoHV = 5
можно поиграться в ini FontName, FontSize
Пример тут https://TransFiles.ru/2a9vy

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1957
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 02.12.21 20:39. Заголовок: SergKis пишет: Побо..


SergKis пишет:

 цитата:
Поборолся еще немного с примером


Большое спасибо

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7156
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.12.21 21:36. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Мне кажется, что ее можно заменить с помощью #xtranslate


А можно добавить ещё такую функцию ?
FUNCTION ProcNL(nVal) 
DEFAULT nVal := 0
RETURN "Вызов из: " + ProcName( nVal + 1 ) + "(" + hb_ntos( ProcLine( nVal + 1 ) ) + ") --> " + ProcFile( nVal + 1 )

Надоело таскать из примера в пример.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3960
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.21 09:24. Заголовок: gfilatov2002 В прим..


gfilatov2002
В примере поправил ошибки и добавил SpecHd https://TransFiles.ru/ec1cp

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1958
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 03.12.21 11:28. Заголовок: SergKis пишет: В пр..


SergKis пишет:

 цитата:
В примере поправил ошибки


Большое спасибо, только закомментировал одну строку

 цитата:
...
NEXT
dbCreate(cDbf, aStru)
// lDbf := hb_FileExists(App.Cargo:cDbf+".dbf")
ENDIF


в противном случае создается пустой файл

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3961
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 03.12.21 12:19. Заголовок: gfilatov2002 пишет т..


gfilatov2002 пишет
 цитата:
только закомментировал одну строку


Была мысль соединить, добавление записей в том IF, но она потерялась
Теперь нашлась. Думаю с примером завершил (добавил в ini и Footer наличие),
SuperHeader в oTsb:bBody, кому надо, добавят
Тут https://TransFiles.ru/h4y5t

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1959
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 03.12.21 13:45. Заголовок: SergKis пишет: с пр..


SergKis пишет:

 цитата:
с примером завершил




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3962
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 05.12.21 17:04. Заголовок: gfilatov2002 Поправ..


gfilatov2002
Поправил в примере пару ошибок в _TBrowse(), убрал команды This..., кое что добавил в ini
Тут https://TransFiles.ru/kar5i
В таком виде, можно в lib поместить _TBrowse(oTsb), как Андрей просил

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1961
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 05.12.21 18:46. Заголовок: SergKis пишет: В та..


SergKis пишет:

 цитата:
В таком виде, можно в lib поместить


Большое спасибо
Посмотрю, что можно сделать

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3963
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 06.12.21 12:40. Заголовок: gfilatov2002 Пример..


gfilatov2002
Пример (unicode hmg) тсб с codepage dbf файлов
Тут https://TransFiles.ru/o65of

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1962
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 06.12.21 13:26. Заголовок: SergKis пишет: Прим..


SergKis пишет:

 цитата:
Пример (unicode hmg) тсб с codepage dbf


Благодарю за помощь

Также сделал совсем крошечный пример с использованием новой функции:

 цитата:
Function TBrwTest() 

Local oBrw, ;
cForm := GetUniqueName( "wMain" )

DbSelectArea( "Employee" )

DEFINE WINDOW &cForm TITLE "Customer List" CHILD NOSIZE

oBrw := _TBrowse()

AEval( oBrw:aColumns, {| oCol | oCol:lFixLite := .T., ;
oCol:lEdit := .T., ;
oCol:lOnGotFocusSelect := .T., ;
oCol:lEmptyValToChar := .T. } )

ON KEY ESCAPE ACTION ( iif( oBrw:IsEdit, oBrw:SetFocus(), ThisWindow.Release ) )

END WINDOW

CENTER WINDOW &cForm
ACTIVATE WINDOW &cForm

Return Nil



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7158
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 06.12.21 14:49. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Также сделал совсем крошечный пример с использованием новой функции:



А можно вообще обойтись без
        DEFINE WINDOW &cForm TITLE .....  
.....

А сразу так:
FUNCTION Main() 

RddSetDefault("DBFCDX")

SET CODEPAGE TO UKRAINIAN // hb_SetCodepage( "UA1251" )
SET LANGUAGE TO UKRAINIAN // hb_CdpSelect( "UA1251" )
cAls := "UA_STREET"
cDbf := GetStartUpFolder() + '\_Ua1251.dbf'
cTtl := cAls + " , " + cDbf + " , UA1251"
USE (cDbf) ALIAS (cAls) CODEPAGE "UA1251" NEW
oBrw1 := _TBrowse(cTtl)

SET LANGUAGE TO GERMAN
SET CODEPAGE TO GERMAN
cAls := "DE_STREET"
cDbf := GetStartUpFolder() + '\_De1252.dbf'
cTtl := cAls + " , " + cDbf + " , DEWIN"
USE (cDbf) ALIAS (cAls) CODEPAGE "DEWIN" NEW
oBrw2 := _TBrowse(cTtl)

RETURN NIL


Т.е. первое окно пускай создаётся MAIN, а потом другие WINDOWTYPE STANDARD ... NOWAIT
Тогда на экране будет показаны сразу все нужные базы для просмотра.
И кода меньше придётся писать....

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3964
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 06.12.21 15:04. Заголовок: gfilatov2002 пишет Т..


gfilatov2002 пишет
 цитата:
Также сделал совсем крошечный пример с использованием новой функции:


Пример 2 тсб на окне с использованием новой функции https://TransFiles.ru/cl7ds

Andrey пишет
 цитата:
И кода меньше придётся писать....


Окна делай сам, иначе несколько тсб на окне не выйдет, смотри пример

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7159
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 06.12.21 15:22. Заголовок: SergKis пишет: Окна..


SergKis пишет:

 цитата:
Окна делай сам, иначе несколько тсб на окне не выйдет, смотри пример


Пример классный ! Минимум кода и всё работает.
Я так не могу....

А окна писать самому можно, согласен.
Но хотелось просто узнать - возможно ли сделать пример без MAIN окна !
Проверку же можно сделать при вызове _TBrowse(...)
   cForm   := "HMG_" + ALIAS() + "_" + HB_NtoS( _GetId() ) 
IF Empty( _HMG_MainHandle ) // --- Main window ---

DEFINE WINDOW &cForm WIDTH nW HEIGHT nH TITLE cTitle ICON cIcon ;
MAIN NOMAXIMIZE NOSIZE TOPMOST BACKCOLOR GRAY ;
ON INIT {|| This.Topmost := .F. }

ELSE

lModal := _HMG_IsModalActive // если было вызвано последнее окно MODAL, то вернёт .T.

IF lModal // --- MODAL window ---
DEFINE WINDOW &cForm WIDTH nW HEIGHT nH TITLE cTitle ICON cIcon ;
MODAL NOSIZE ;
ON INIT {|| This.Topmost := .F. /*, oBrw:Setfocus() */ }
ELSE // --- STANDARD window ---
DEFINE WINDOW &cForm WIDTH nW HEIGHT nH TITLE cTitle ICON cIcon ;
WINDOWTYPE STANDARD TOPMOST NOMAXIMIZE NOSIZE ;
ON INIT {|| This.Topmost := .F. /*, oBrw:Setfocus()*/ }
ENDIF

ENDIF


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3965
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 06.12.21 15:28. Заголовок: gfilatov2002 Давайт..


gfilatov2002
Давайте сразу в _TBrowse() сделаем цвет
 
DEFAULT aColor := { ;
{ CLR_FOCUSB, {|c,n,b| c := n, iif( b:nCell == n, -CLR_RED , -RGB( 128, 225, 225 ) ) } }, ;
{ CLR_SELEF , GetSysColor( COLOR_WINDOWTEXT ) }, ;
{ CLR_SELEB , {|c,n,b| c := n, iif( b:nCell == n, -CLR_BLUE, -RGB( 128, 225, 225 ) ) } } ;
}

тогда в работе не надо делать дополнительно
oBrw1:SetColor( { CLR_FOCUSB }, {{|c,n,b| c := n, iif( b:nCell == n, -CLR_RED, -RGB( 128, 225, 225 ) ) }} )
oBrw2:SetColor( { CLR_FOCUSB }, {{|c,n,b| c := n, iif( b:nCell == n, -CLR_RED, -RGB( 128, 225, 225 ) ) }} )
как в примере выше

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1963
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 06.12.21 15:34. Заголовок: SergKis пишет: сраз..


SergKis пишет:

 цитата:
сразу в _TBrowse() сделаем цвет


OK

SergKis
Но при таком определении цвета у меня нет красного цвета при переключении фокуса с одного бровса на другой

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3966
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 06.12.21 16:23. Заголовок: gfilatov2002 пишет Н..


gfilatov2002 пишет
 цитата:
Но при таком определении цвета у меня нет красного цвета при переключении фокуса с одного бровса на другой


У меня работает цвет при переходе фокуса с одного тсб на другой (красный есть) и при переключении на FAR оба тсб синий цвет ячеек в фокусе
Пример https://TransFiles.ru/8yyrp

PS
Собрал пример в однобайтной сборке, все так же работает, как и в unicode

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1964
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 06.12.21 16:37. Заголовок: SergKis пишет: У ме..


SergKis пишет:

 цитата:
У меня работает


Разобрался (это был мой косяк ), сейчас все работает.
Благодарю за помощь

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 125 , стр: 1 2 3 4 5 6 7 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 361
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет