Здравствуйте!
Меня интересует следующее: в LV есть возможность редактирования (создания пользовательских) элементов всплывающих меню. Хотелось бы использовать функционал стандартных элементов (из категории Default), но со своими именами в меню. Например, Copy Data - стандартный элемент меню типа Application Item с тегом APP_SC_COPY_DATA. Редактировать его имя невозможно, а в приложении с русскоязычным интерфейсом логичнее смотрелось бы 'Копировать данные' или т.п., попытка создать свой элемент с тегом APP_SC_COPY_DATA автоматически переименовывает его в Copy Data . Как быть?
Пользовательские Run-Time Shortcut Menu
-
- VIP
- Сообщения: 1338
- Зарегистрирован: 03 фев 2010, 00:42
- Награды: 6
- Версия LabVIEW: 6.1 - 2024
- Откуда: Германия
- Благодарил (а): 1 раз
- Поблагодарили: 44 раза
- Контактная информация:
Re: Пользовательские Run-Time Shortcut Menu
Эта тема обсуждалась вот здесь: Translate standard popup menus
К сожалению редактировать эти меню в данный момент возможности нет (во всяком случае мне неизвестна такая возможность, да как-то и необходимости не было)
Собственно, есть четыре варианта
1. Сделать это меню самостоятельно (придётся, конечно повозиться с программированием необходимой функциональности). Понятно, что дублировать существующие функции некошерно, но что делать...
2. Отредактировать ресурсы. Технически LabVIEW берёт строки для этих меню из файла %Program Files%\National Instruments\LabVIEW xxxx\resource\lvstring.rsc в режиме разработки или из %Program Files%\National Instruments\Shared\LabVIEW Run-Time\xxxx\English\lvapp.rsc в режиме Run-Time. Надо отметить, что в режиме Run-Time язык автоопределяется и подгружается соответствующий ресурс. В моём случае, например, загружается немецкая среда исполнения из папки German. Но поддержки русского языка, естественно нет. В общем, можно открыть этот файл в шестнадцатеричном редакторе, найти, скажем APP_SC_COPY_DATA, и заменить текст (при этом надо быть аккуратным с длиной строки - скорее всего, её менять нельзя). Хотя я бы не стал так делать по понятным причинам.
3. Забить на это дело
4. Дождаться возможности локализации в одной из следующих версий.
Где-то так.
Андрей.
К сожалению редактировать эти меню в данный момент возможности нет (во всяком случае мне неизвестна такая возможность, да как-то и необходимости не было)
Собственно, есть четыре варианта
1. Сделать это меню самостоятельно (придётся, конечно повозиться с программированием необходимой функциональности). Понятно, что дублировать существующие функции некошерно, но что делать...
2. Отредактировать ресурсы. Технически LabVIEW берёт строки для этих меню из файла %Program Files%\National Instruments\LabVIEW xxxx\resource\lvstring.rsc в режиме разработки или из %Program Files%\National Instruments\Shared\LabVIEW Run-Time\xxxx\English\lvapp.rsc в режиме Run-Time. Надо отметить, что в режиме Run-Time язык автоопределяется и подгружается соответствующий ресурс. В моём случае, например, загружается немецкая среда исполнения из папки German. Но поддержки русского языка, естественно нет. В общем, можно открыть этот файл в шестнадцатеричном редакторе, найти, скажем APP_SC_COPY_DATA, и заменить текст (при этом надо быть аккуратным с длиной строки - скорее всего, её менять нельзя). Хотя я бы не стал так делать по понятным причинам.
3. Забить на это дело
4. Дождаться возможности локализации в одной из следующих версий.
Где-то так.
Андрей.
-
- user
- Сообщения: 76
- Зарегистрирован: 26 июн 2011, 12:03
- Версия LabVIEW: 2012
- Контактная информация:
Re: Пользовательские Run-Time Shortcut Menu
Спасибо! А я думал, видимо, о пятом варианте - самостоятельно создать меню с User-тегами, но в обработчике, по своим тегам вызывать действия, имеющие стандартные теги (Aoolication Item Tag).
-
- VIP
- Сообщения: 1338
- Зарегистрирован: 03 фев 2010, 00:42
- Награды: 6
- Версия LabVIEW: 6.1 - 2024
- Откуда: Германия
- Благодарил (а): 1 раз
- Поблагодарили: 44 раза
- Контактная информация:
Re: Пользовательские Run-Time Shortcut Menu
Это первое, что приходит в голову, но так сделать не выйдет, потому что вызвать эти пункты меню программно возможности нет. Теоретически можно воспользоваться WinAPI, попытаться получить хэндл контрола и отправить ему соответствующее сообщение (надо ещё знать какое), но не факт, что получится.Спасибо! А я думал, видимо, о пятом варианте - самостоятельно создать меню с User-тегами, но в обработчике, по своим тегам вызывать действия, имеющие стандартные теги (Aoolication Item Tag).
-
- user
- Сообщения: 76
- Зарегистрирован: 26 июн 2011, 12:03
- Версия LabVIEW: 2012
- Контактная информация:
Re: Пользовательские Run-Time Shortcut Menu
В таком случае, придется изобретать велосипед, .т.е. писать свой функционал