Многоязычныи интерфеис в Labview
-
- developer
- Сообщения: 261
- Зарегистрирован: 22 дек 2008, 14:07
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Многоязычныи интерфеис в Labview
Есть ли в Labview возможность переходить от одного языка к другому? Ну, т.е. есть проект, где все кнопки-лампочки сопровождены названиями на русском(например), а надо перевести все на англиискии или испанскии(ну, проект один, закзачиков несколько разноязычных) С чего начать эдакии VI - переводчик? Спасибо.
-
Pavel Krivozubov
- professor
- Сообщения: 4421
- Зарегистрирован: 07 фев 2008, 16:39
- Награды: 3
- Версия LabVIEW: 7.0 - 2013
- Откуда: г. Электросталь
- Благодарил (а): 24 раза
- Поблагодарили: 9 раз
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
можно допустим записать файл с метками на разных языках, и при программной смене языка считывать метки на выбранном языке в кластер и раздать их свойствам Label Text всех контролов.
Правила форума
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
- banderlog
- user
- Сообщения: 71
- Зарегистрирован: 23 апр 2008, 20:44
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
А у меня почему-то с переходом с версии 8.5 на 8.6 вообще только по-буржуйски можно писать! ((( Ни названия элементов, ни подписи к ним - вообще ничего кириллицей не пишется!
-
Pavel Krivozubov
- professor
- Сообщения: 4421
- Зарегистрирован: 07 фев 2008, 16:39
- Награды: 3
- Версия LabVIEW: 7.0 - 2013
- Откуда: г. Электросталь
- Благодарил (а): 24 раза
- Поблагодарили: 9 раз
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
вот что надо сделать:banderlog писал(а):А у меня почему-то с переходом с версии 8.5 на 8.6 вообще только по-буржуйски можно писать! ((( Ни названия элементов, ни подписи к ним - вообще ничего кириллицей не пишется!
/viewtopic.php?f=141&t=501
Правила форума
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
-
- developer
- Сообщения: 261
- Зарегистрирован: 22 дек 2008, 14:07
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Спасибо за ответ, но когда пытаюсь установить property LabelText, то получаю следующую ошибку Possible reason(s):
LabVIEW: This property is writable or this method is available only when the VI is in edit mode.
LabVIEW: This property is writable or this method is available only when the VI is in edit mode.
- banderlog
- user
- Сообщения: 71
- Зарегистрирован: 23 апр 2008, 20:44
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Спасибо! А то я уже думал создавать надписи в предыдущей версии, а потом переносить в новую :)Indey писал(а): вот что надо сделать:
/viewtopic.php?f=141&t=501
-
Forward
- professional
- Сообщения: 337
- Зарегистрирован: 03 мар 2008, 12:41
- Награды: 3
- Версия LabVIEW: 2010
- Откуда: Кишинев
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Актуально :uk: :ru: :de: .
Во-первых, когда-то eg уже выкладывал нароботки по переводу - посмотри эту тему: /viewtopic.php?f=35&t=71&hilit=%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4.
Во-вторых, устанавливать надо не булеан текст (а вернее не только булеан). Считываешь Label (то как называется контрол на блок-диаграмме) контрола - он всегда один, и менять динамически ты его не можешь (менять можно свойтсво Caption Text), по нему (Label) ты например можешь синхронизироваться с файлом и вычитать оттуда данные для соответствующего контрола на сооответствующем языке. Далее все зависит от типа контрола - если в общем виде: то надо делать большой switch, где в зависимости от типа контрола производить определенные операции. К примеру для Numeric надо заменить только caption, для Boolean - caption и boolean text, для Tab - уже придется переименовывать все закладки, для Listboxa - вообще все содержимое и т. п.
Во-первых, когда-то eg уже выкладывал нароботки по переводу - посмотри эту тему: /viewtopic.php?f=35&t=71&hilit=%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4.
Во-вторых, устанавливать надо не булеан текст (а вернее не только булеан). Считываешь Label (то как называется контрол на блок-диаграмме) контрола - он всегда один, и менять динамически ты его не можешь (менять можно свойтсво Caption Text), по нему (Label) ты например можешь синхронизироваться с файлом и вычитать оттуда данные для соответствующего контрола на сооответствующем языке. Далее все зависит от типа контрола - если в общем виде: то надо делать большой switch, где в зависимости от типа контрола производить определенные операции. К примеру для Numeric надо заменить только caption, для Boolean - caption и boolean text, для Tab - уже придется переименовывать все закладки, для Listboxa - вообще все содержимое и т. п.
-
- developer
- Сообщения: 261
- Зарегистрирован: 22 дек 2008, 14:07
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Спасибо! Посмотрю, а я пока сделала кластер из кнопок, фаил из 2 колонок( 2 языка)Из фаила получала 2 массива и пыталась сразу всем кнопкам поменять Boolean Text. По однои - выходит, а сразу всему кластеру - нет. Что ожидаемо, да?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Да, тебе нужно перебирать массив с контролами, и в зависимости от label менять caption и/или boolean text. Caption например всегда писать на английском. Создать несколько файлов с переводом например
английский label - русский boolean text/caption
Считываешь подходящий файл с переводом, берёшь все элементы лицевой панели и перебираешь, смотришь label ищешь его в своём файле, потом в следущем столбике подходящий caption/boolean text и задаёшь его через property node.
английский label - русский boolean text/caption
Считываешь подходящий файл с переводом, берёшь все элементы лицевой панели и перебираешь, смотришь label ищешь его в своём файле, потом в следущем столбике подходящий caption/boolean text и задаёшь его через property node.
-
- developer
- Сообщения: 261
- Зарегистрирован: 22 дек 2008, 14:07
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Огромное спасибо за ссылку и, естественно, автору - браво!!!я - серьезно!
Вот только у меня возникла проблема: в проекте, которыи требует перевода существуют контролы с одним и тем же Lable. Можно как-нибудь обоити эту ситуацию не прибегая к ручному переименованию? Cпасибо!
Вот только у меня возникла проблема: в проекте, которыи требует перевода существуют контролы с одним и тем же Lable. Можно как-нибудь обоити эту ситуацию не прибегая к ручному переименованию? Cпасибо!
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
Lable должен быть у всех элементов разным, а вот Caption можно делать одинаковым. Lable это идентификатор элемента, как например в C++ имя переменной. А Caption это просто текст, который показывается пользователю на лицевой панели. Так что вопрос должен отпасть сам собой, я думаю.
Кстати теперь можно повышать карму за хороший ответ и даже добавить коментарий
Кстати теперь можно повышать карму за хороший ответ и даже добавить коментарий
-
- developer
- Сообщения: 261
- Зарегистрирован: 22 дек 2008, 14:07
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
В том-то и дело, что невсегда есть то, что должно быть. Т.е. существует VI, внутри еще Vi И иногда Lable совпадают. Вот сеичас мучаюсь со старым проектом(чужим)Вот и боюсь переделывать(да и много их) Мне-то надо, чтобы только на экране был текст на разных языках, только бы код не попортить...
А насчет улучшения кармы - да с удовольствием! Есть за что!!! А только как?
А насчет улучшения кармы - да с удовольствием! Есть за что!!! А только как?
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
В рамках поставленной задачи очевидно, что при древовидной структуре программы, элементы каждого VI должны иметь уникальное название, либо для каждого подприбора следует держать собственный список с языковыми параметрами.
-
- developer
- Сообщения: 261
- Зарегистрирован: 22 дек 2008, 14:07
- Награды: 1
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Многоязычныи интерфеис в Labview
В том-то и дело , что Vi вызывает sub Vi, в котором есть, например, ринг с таким же Lабле, и как их различить? Счетчик что ли какои поставить, типа , если совпадает название , прибавлять, ну номер что ли автоматом? Или вот еше, когда используются VI из библиотеки, тоже иногда совпадают названия.Вообшем, пока проблема в силе. И чего делать - не знаю...
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 0 Ответы
- 1900 Просмотры
-
Последнее сообщение Anastasia
-
- 3 Ответы
- 2068 Просмотры
-
Последнее сообщение PozhiloyGoblin
-
- 0 Ответы
- 344 Просмотры
-
Последнее сообщение maxim_MA
-
- 23 Ответы
- 2416 Просмотры
-
Последнее сообщение dadreamer
-
- 2 Ответы
- 391 Просмотры
-
Последнее сообщение ujin1