Размеры кнопки

Обсуждение, связанное с разработкой ПО верхнего уровня
Ответить
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Размеры кнопки

Сообщение jane_wild »

Ребята помогите понять в чем проблема. Изменяются размеры кнопок после компиляции. На девелоперской машине комилирую код, устанавливаю его на пользовательскую машину и вижу, что некоторые кнопки изменились в размере , они становяться шире. Скажем была кнопочка 34х34, а стала 34х50. Подозреваю что все дело в шрифтах, только не понятно каких именно и как они могут влиять на размер? И есть ли возможность это предотвратить. Спасибо
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Размеры кнопки

Сообщение Blackman »

Preventing Controls From Resizing With OS Font Settings
------------------------------------------------------------------------------------------
appFont = "0" 13
systemFont = "1" 13
dialogFont = "2" 13
------------------------------------------------------------------------------------------
Я например задаю по умолчанию фонт Tahoma и соответствующие настройки будут:

appFont = "Tahoma" 13
dialogFont = "Tahoma" 13
systemFont = "Tahoma" 13
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Размеры кнопки

Сообщение jane_wild »

------------------------------------------------------------------------------------------
Я например задаю по умолчанию фонт Tahoma и соответствующие настройки будут:

appFont = "Tahoma" 13
dialogFont = "Tahoma" 13
systemFont = "Tahoma" 13
Если я правильно поняла, то эти настройки прописывать в LabVIEW.ini (Tools->Options->Environment)

А вот это где прописывать? В ini файле, который лежит рядом с скомпилированным exe?
Preventing Controls From Resizing With OS Font Settings
------------------------------------------------------------------------------------------
appFont = "0" 13
systemFont = "1" 13
dialogFont = "2" 13
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5462
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 86 раз

Re: Размеры кнопки

Сообщение IvanLis »

jane_wild писал(а):А вот это где прописывать? В ini файле, который лежит рядом с скомпилированным exe?
Создаешь файл, например combined.ini, следующего содержания:
[Название EXE файла]
appFont="Tahoma" 13
dialogFont="Tahoma" 13
systemFont="Tahoma" 13
А потом при компиляции добавляешь его содержимое в основной INI файл согласно описания
rtaImage-1.png
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Размеры кнопки

Сообщение jane_wild »

Blackman, IvanLis, Спасибо за информацию, я этого не знала. :thank: Но это оказался не мой случай. Все дело было в boolean text, который был не видимым и по количеству буковок превышал размеры самой кнопки. Естественно после приведения его к короткому написанию проблема исчезла.
rsv
advanced
advanced
Сообщения: 170
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2020
Откуда: Россия, Ижевск
Благодарил (а): 33 раза
Контактная информация:

Re: Размеры кнопки

Сообщение rsv »

А потом при компиляции добавляешь его содержимое в основной ini-файл согласно описания
У меня не объединяет ini-файлы, а тупо заменяет основной ini-файл содержимым из моего ini-файла.
Проверил следующие варианты:
1. Имя секции в моём ini-файле совпадает с именем исполняемого файла;
2. Имя секции в моём ini-файле НЕ совпадает с именем исполняемого файла;
3. Имя моего ini-файла совпадает с именем исполняемого файла;
4. Имя моего ini-файла НЕ совпадает с именем исполняемого файла;
Во всех 4-х вариантах результат получается одинаковым.
Если флаг "Use Custom Configuration file" не стоит, то создаётся ini-файл без моих ключей. Если флаг стоит, то создаётся ini-файл с именем исполняемого файла и с содержимым из моего ini-файла.
Объединить содержимое 2-х файлов не получилось.
Может ещё что-то где-то надо указать?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Размеры кнопки

Сообщение dadreamer »

rsv писал(а):Объединить содержимое 2-х файлов не получилось.
Может ещё что-то где-то надо указать?
Как workaround, могу предложить читать/писать напрямую в ini-файл приложения. См. метод App->Config.Get/Set Settings - http://labviewportal.org/viewtopic.php?p=80967#p80967
rsv
advanced
advanced
Сообщения: 170
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2020
Откуда: Россия, Ижевск
Благодарил (а): 33 раза
Контактная информация:

Re: Размеры кнопки

Сообщение rsv »

dadreamer писал(а):
rsv писал(а):Объединить содержимое 2-х файлов не получилось.
Может ещё что-то где-то надо указать?
Как workaround, могу предложить читать/писать напрямую в ini-файл приложения. См. метод App->Config.Get/Set Settings - <!-- l --><a class="postlink-local" href="http://labviewportal.org/viewtopic.php? ... 67</a><!-- l -->
Спасибо за наводку. Если не разберусь, придётся этот способ использовать.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Размеры кнопки

Сообщение dadreamer »

А чем вызвана необходимость иметь общий ini-файл? Скомпилированная программа вообще по дефолту может без ini-файла запускаться и работать. А собственный файл можно и не добавлять в проект, тогда он ничего нигде не заменит. Я, к примеру, давно пользуюсь OpenG Variant Configuration File Library. Там есть пара :vi: : Read Panel from INI и Write Panel to INI. Позволяет считать и записать все элементы панели в одно действие. С небольшими допилами можно читать/писать только контролы и/или применить список исключений. Стандартными INI-инструментами обходиться можно, но становится тяжело их использовать при большом числе контролов.
Вложения
2019-08-26_17-48-13.jpg
Ответить

Вернуться в «Лицевая панель»