[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
LauncherPB
Скачать

Скриншоты

Последнее обновление:
Изменён алгоритм вычисления размера окна, размера кнопок и области кнопок.
Добавлен параметры в ini-файл: TipStyle=1, TipWidth=220, CRLF=~, warntext=моё предупреждение.

параметры

Параметры ini-файла
[gui]
Title=Launcher - Заголовок окна
icon=launcher.ico - иконка окна
FormX=10 - x-координата окна, если не указаны обе координаты, то по центру
FormY=10 - y-координата окна, если не указаны обе координаты, то по центру
FormWidth=430 - Ширина окна
FormHeight=310 - Высота окна
FormStyle=2156396544 - стиль окна, обычно заголовка. 13107200 - без кнопки "Свернуть", 13107204 - узкий заголовок - панель инструментов, 2156396544 - без заголовка
Picture = Launcher.bmp - картинка
GuiBkColor=3F3F3F - Цвет фона если картинка не найдена
AreaX=90 - x-координата заданной области для кнопок
AreaY=70 - y-координата области
AreaWidth=320 - ширина области
AreaHeight=220 - высота области
Margin=5 - промежутки между кнопок
Columns=2 - число колонок, вертикальных рядов
FontName=Consolas - название шрифта
FontSize=14 - размер шрифта
FontStyle=256 - стиль шрифта
BtnAlign=256 - Выравнивание текста на кнопке (по умолчанию по центру, 256 - слева, 512 - справа, 8192 - многостроковый, 1 - выбранная). Для многострокового тильда "~" используется в качестве переноса строки и заменяется на CRLF.
BtnMinW= - минимальная ширина кнопки
BtnMinH= - минимальная высота кнопки
BtnColor= - пока не используется (цвет кнопки)
Wow64=1 - отключает перенаправление в SysWOW64 для 32-битной программы на ОС x64
Esc=1 - добавляет хоткей Esc для закрытия программы.
TipStyle=1 - задаёт стиль всплывающей подсказки. Может быть суммой флагов 1, 2, 64, где 1 - включает заголовок и иконку, 2 - показывает exe и arg, 64 - мультяшный вид подсказки.
TipWidth=220 - ширина всплывающей подсказки.
TipTime=15 - время отображения всплывающей подсказки.
CRLF=~ - символ переноса используемый в параметрах warntext, hint, в названии кнопки при включенном флаге "многострочный текст". Например "warntext=текст~подсказки" будет 2 строки.
Если данные области Area не указаны, то по умолчанию вся площадь окна.
Если FormX и FormY не указана или оба равны 0, то применяется центрирование окна.
Если не задан Picture, то применяется GuiBkColor, если и он не указан, то стандартное серое окно.
Если FontName не указан, то никакие настройки шрифта не применяются.
Если указан минимальный размер кнопки (чтобы вместился текст) и размер кнопок вычислен меньше минимального, то область Area или окно будет увеличено, а кнопки создаются с минимальным указанным размером.
Кнопки
[6] - название секции не имеет значения, главное чтобы не повторялись
name=Calc - Название программы - отображается на кнопке
hint=Run Calc - Подсказка при наведении мыши
exe=calc.exe - Исполняемый файл, полный путь или относительный
arg=\k - аргументы/параметры для исполняемого файла
hotkey=Alt + q - Горячая клавиша. Если использована, то добавиться в контекстное меню, вызываемое правым кликом мыши.
icon=calc.exe - иконка, полный путь или относительный
LargeIcon = 1 - Размер иконки, если 1 то 32, если 0, то 16
Admin = 1 - Запускает программу от админа
exit = 1 - Закрывает лаунчер после нажатия кнопки, запуская перед этим программу
hide = 1 - Скрывает процесс, полезно для запуска консольных программ
warn=1 - Показать сообщение с требованием подтверждения операции, если кнопка опасна (перезагрузка и т.д.)
warntext=моя подсказка - при использовании warn задаёт свой текст диалога предупреждения перед запуском. При этом указать warn=2
[7]
name=Выход
exe=Exit - особый случай, если Exit, то закрывает окно ничего не запуская
[8]
bhide=1 - создаёт пустое пространство по размеру кнопки, чтобы визуально разделить кнопки между собой.
Ком-строка
Можно передать программе ini-файл, чтобы открыть копию программы с другим конфигурационным файлом. Указывается имя файла или относительный путь, относительно текущей папки программы.
Различные сборки/компиляции
Launcher.exe - поддерживает только *.bmp-файлы в качестве фона и имеет минимальный размер исполняемого файла. Этот вариант идеален без использования фона.
LauncherGif.exe - поддерживает *.gif-файлы в качестве фона, размер исполняемого файла увеличен на 7 кб (также поддерживает *.bmp). Идеален при использовании фона по критерию размера, если картинка имеет менее 256 цветов. Такие картинки могут иметь размер менее их jpg варианта и с более высоким качеством.
LauncherJPG.exe - поддерживает *.jpg-файлы в качестве фона, размер исполняемого файла увеличен на 120 кб (также поддерживает *.bmp). Этот вариант идеален при использовании фона по критерию размера, если в качестве фона используется полноцветная картинка, например фото природы, так как сумма размера исполняемого файла и файла картинки является минимальной.
LauncherXYWH.exe - поддерживает координаты кнопки, например xywh=5,5,155,40. Этот вариант сделан как исключение из правил. Позволяет сделать отдельные кнопки, например как кнопки переключения вкладок, при этом загружая иной конфиг. Также можно сделать кнопки с указанием автора сборника или информационная кнопка, указывающая как пользоваться сборником.
Стиль шрифта FontStyle поддерживает флаги:
256 - жирный
512 - курсив
4 - подчёркнутый
8 - перечёркнутый
16 - наилучшее качество
просто суммировать флаги, например 264 (256+8) включит соответствующее.
Автовычисление
Можно указать только минимальный размер кнопок и число колонок, при этом размер окна вычисляется автоматически, чтобы кнопки уместились.
BtnMinW = 200
BtnMinH = 44
Columns = 2
Важно учесть, что задавая область кнопок "Area", её размер условный, например при вычислении 10 кнопок на высоте области 335 получим высоту кнопки 33,5 пиксел, но так как пиксел не делится на десятые доли, то размер кнопки будет 33 пиксел, умножаем на 10 кнопок и получаем область кнопок 330, а не 335, конечно с учётом отступом, но они опущены, чтобы показать пример того, что размер области кнопок не будет соответствовать действительности, поэтому когда отступ под кнопками или справа от кнопок не соответствует действительности и выглядит несимметрично, то учитывайте эту погрешность и самостоятельно определяйте правильный размер окна и области кнопок. Если у вас 20 кнопок по высоте и изменение размера кнопки на 1 пиксел провоцирует изменение области кнопок на 20 пикселов Вычислить самостоятельно область кнопок так: высоту кнопки (28) прибавить отступ (2), умножить на число кнопок (20) и прибавить ещё отступ (2) получим высоту области 602, т.е. (28 + 2) * 20 + 2 = 602. Можно было бы делать округление и получить 33 пиксел, потом 37 пиксел вместо 36, но тогда кнопки бы скакали по размерам и по отступам в пределах пиксела и если отступ то 2, то 3 пиксела, это будет выглядеть неприглядно.
Прочее
Если нажать F1 (не удерживая), и после этого кликнуть любую кнопку, то вместо запуска появится диалоговое окно с отображением данных для этой кнопки, которые указываются в ini-файле. Таким образом понятно, что будет запущено, возможно будет важно посмотреть ключи запуска и т.д.
Переменная %%P в параметрах "exe", "arg" заменяется на x86 или x64 взависимости от того на какой ОС запущен лаунчер. Это позволяет запускать exe-файлы взависимости от битности ОС. Определяется по наличию папка SysWow64. А также передаёт переменную окружения %P%. Для примеры можно из лаунчера запустить bat-файл с таким содержанием:
echo %P%
pause


Last edited by AZJIO on 2022-01-10 07:57; edited 22 times in total

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
Обновил
BCfr=0099FF - новый параметр, цвет рамки кнопки (не активной, а вообще)
Расшифровка сокращений
BC - кнопка цвет (Button Color)
bg - фон, бэкграунд (background)
txt - цвет текста
2.- для нажатой кнопки
fr - фрэйм, рамка (Frame)
Восстановил поддержку шрифта. При рисовании надо всё ручками указывать, не возможно просто задать шрифт окну, всё что рисуется надо отдельно получить дескриптор шрифта, кисти. Жирный шрифт не прикрутил. Размер иконки пока всегда 32.

[Quote]

    sergeysvirid
  • 104
  • Longevity: 7 years 1 month
  • Posts: 2307
  • REPUTATION:127

    [+] [-]
  • Location: 65 регион (GMT+11)
AZJIO,
А параметр btnAlign = 0 ещё гляжу появился. За что отвечает?

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
sergeysvirid, он был и раньше, но в текущем варианте он поддерживает только 0 - по центру и 256 - выравнивание текста слева.
Перезалил, добавил LargeIcon = 1 в секцию [gui] Может тогда отменить LargeIcon для каждой кнопки? То есть сделать общую. Сейчас если общий LargeIcon = 0, а у кнопок LargeIcon =1 или наоборот, то происходит трансформация иконки из 32 в 16 и наоборот, поэтому выгоднее оба указывать 1 или оба 0

[Quote]

    sergeysvirid
  • 104
  • Longevity: 7 years 1 month
  • Posts: 2307
  • REPUTATION:127

    [+] [-]
  • Location: 65 регион (GMT+11)
AZJIO,
LargeIcon = 1 конечно лучше в секцию [gui] перенести, чем для каждой кнопки прописывать. bs

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
91829AZJIO,
LargeIcon = 1 конечно лучше в секцию [gui] перенести, чем для каждой кнопки прописывать. bs
Перезалил
Пока для Launcher-OWNER.exe сделал LargeIcon и LargeIcon2. Первый отвечает за размер иконок автозаполняемых кнопок, второй за координатные, вдруг кто захочет координатные сделать с маленькими иконками.
Ещё перезалил, добавил параметр BCfr2, цвет рамки при нажатой кнопке.

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
Еще идея была сделать кнопку как ссылку, автор топика на первом скрине запросил подобное, смотрится неплохо. В пурике есть гаджет ссылки но без иконки, а подключив иконку принудительно ссылка стала кнопкой с непрозрачным фоном. Вот это бы хотелось решить, сделать прозрачный фон и задейтвовать эффект наведения курсора, как в папке тест в архиве лаунчера.
Перезалил, в Launcher и Launcher_x64 сделал LargeIcon в секции [gui] (ini не переделывал в архиве), по умолчанию задал LargeIcon=1, то есть 32 пиксел. Просто удалить параметр LargeIcon из секции кнопок.
В LauncherXYWH надо добавить LargeIcon2 для дополнительных кнопок, поэтому переделаю позже.

[Quote]

    rezorustavi
  • 2337
  • Longevity: 6 years
  • Posts: 866
  • REPUTATION:33

    [+] [-]
  • Location: Грузия, город Рустави
AZJIO,
aa Приветствую. На сколько я понимаю, лаунчер LauncherXYWH-UDLR_Uni поддерживает gif
Закинул, отображает картинку анимации, но сама анимация не работает, то есть не воспроизводится:
Ссылка 12,5 МБ. Пароль 123
Если эту анимашку открыть в Google Chrome, воспроизводится.
И пожалуйста, как будет у Вас свободное время, все новые функции остальных лаунчеров добавьте в универсальный вариант. az

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
rezorustavi, не в ближайшие дни. Пока поглощён "ContMenuFiles" и комп ждёт очереди настройки.
Анимация gif не поддерживается, так как объект окна статичный, не является плеером или движком прокручивания анимации. Это если бы сделать в виде веб-гаджета и загрузить html-контент с картинкой и веб-кнопками, то тогда бы была анимация. И я делал пример на AutoIt3. Но есть зависимость, если в компе отключен ActiveX и JavaScript то можно получить нерабочее окно.

[Quote]

    rezorustavi
  • 2337
  • Longevity: 6 years
  • Posts: 866
  • REPUTATION:33

    [+] [-]
  • Location: Грузия, город Рустави
91950не в ближайшие дни.
aa Дорогой друг, спасибо за внимание, как будет свободное время. az

[Quote]

    rezorustavi
  • 2337
  • Longevity: 6 years
  • Posts: 866
  • REPUTATION:33

    [+] [-]
  • Location: Грузия, город Рустави
AZJIO,
aa Приветствую. Сегодня первый раз поймал такой глюк, при нажатии на кнопки:
.
Вместо того чтобы запустилось, вылезло окошко типа:
.
Хотя F1 не нажимал, с клавиатурой проблем нет. И это продолжалось на всех кнопках. После нажатия на F1, все заработало. Как можно отключить появление диалогового окна с отображением данных для этой кнопки, которые указываются в ini-файле. F1?

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 11 months
  • Posts: 939
  • REPUTATION:117

    [+] [-]
Можно будет добавить флаг, чтобы отключить этот функционал.

[Quote]

    rezorustavi
  • 2337
  • Longevity: 6 years
  • Posts: 866
  • REPUTATION:33

    [+] [-]
  • Location: Грузия, город Рустави
AZJIO,
aa При обновлении Лаунчеров, добавьте пожалуйста. az

Page 23 of 23


Display posts:    

Current time is: 27-Jan 12:23

All times are UTC + 3


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum