[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 лет 1 месяц
  • Сообщений: 1321
  • Репутация:127

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

Скриншоты

Последнее обновление:
Добавлено действие по правой кнопки мыши на кнопке, в ini-файл добавляется параметр url=ссылка. Если указана ссылка, то открывает её, иначе открывает исполняемый файл (exe=) в проводнике. Можно указать файл из текущей папки, из системных или прямой путь (C:\...). Раскрытие переменных тут не работает.
Исправление подсказки, не смешивается мультяшная балон с квадратной.
LargeIcon перенесён в глобальные настройки, LargeIcon2 - для кнопок с координатами.

параметры

Параметры 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 строки.
LargeIcon = 1 - Размер иконки, если 1 то 32, если 0, то 16
LargeIcon2 = 1 - Размер иконки для кнопок с координатами
Если данные области Area не указаны, то по умолчанию вся площадь окна.
Если FormX и FormY не указана или оба равны 0, то применяется центрирование окна.
Если не задан Picture, то применяется GuiBkColor, если и он не указан, то стандартное серое окно.
Если FontName не указан, то никакие настройки шрифта не применяются.
Если указан минимальный размер кнопки (чтобы вместился текст) и размер кнопок вычислен меньше минимального, то область Area или окно будет увеличено, а кнопки создаются с минимальным указанным размером.
Кнопки
[6] - название секции не имеет значения, главное чтобы не повторялись
name=Calc - Название программы - отображается на кнопке
hint=Run Calc - Подсказка при наведении мыши
exe=calc.exe - Исполняемый файл, полный путь или относительный
arg=\k - аргументы/параметры для исполняемого файла
hotkey=Alt + q - Горячая клавиша. Если использована, то добавиться в контекстное меню, вызываемое правым кликом мыши.
url=https://... - если указана ссылка, то открывает её, иначе открывает исполняемый файл (exe=) в проводнике. Можно указать файл из текущей папки или прямой путь (C:\...)..
icon=calc.exe - иконка, полный путь или относительный
Admin = 1 - Запускает программу от админа
exit = 1 - Закрывает лаунчер после нажатия кнопки, запуская перед этим программу
hide = 1 - Скрывает процесс, полезно для запуска консольных программ
warn=1 - Показать сообщение с требованием подтверждения операции, если кнопка опасна (перезагрузка и т.д.)
warntext=моя подсказка - при использовании warn задаёт свой текст диалога предупреждения перед запуском. При этом указать warn=2
[7]
name=Выход
exe=Exit - особый случай, если Exit, то закрывает окно ничего не запуская
[8]
bhide=1 - создаёт пустое пространство по размеру кнопки, чтобы визуально разделить кнопки между собой.
Ком-строка
Можно передать программе ini-файл, чтобы открыть копию программы с другим конфигурационным файлом. Указывается имя файла или относительный путь, относительно текущей папки программы.
Различные сборки/компиляции
Launcher.exe - поддерживает только *.bmp-файлы в качестве фона и имеет минимальный размер исполняемого файла. Этот вариант идеален без использования фона.
Launcher-OWNER.exe - Поддерживает цвет кнопок (цвет фона, каймы, шрифта).
LauncherXYWH-UDLR_Uni.exe - поддерживает координаты кнопки, например xywh=5,5,155,40. Позволяет сделать отдельные кнопки, например как кнопки переключения вкладок, при этом загружая иной конфиг. Также можно сделать кнопки с указанием автора сборника или информационная кнопка, указывающая как пользоваться сборником. Аббревиатура UDLR означает выбор кнопок стрелками клавиатуры и Enter. Uni - означает поддержка jpg, gif, png, tga в качестве фона
Стиль шрифта 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 пиксела, это будет выглядеть неприглядно.
Поиск
Используйте Ctrl+F или пункт меню, чтобы быстро найти кнопку по тексту, кнопка будет подсвечена и активирована, достаточно нажать Enter. Вводить достаточно часть слова и даже одну букву, текст проверяется что он есть в названии кнопки без учёта регистра. Если найдено 2 и более кнопок, то выводится сообщения о найденных кнопках и можно указать более точный запрос, при этом первая найденная станет активной. Если ничего не найдено, то сбрасывается активность какой либо кнопки.
Прочее
Если нажать F1 (не удерживая), и после этого кликнуть любую кнопку, то вместо запуска появится диалоговое окно с отображением данных для этой кнопки, которые указываются в ini-файле. Таким образом понятно, что будет запущено, возможно будет важно посмотреть ключи запуска и т.д.
Переменная %%P в параметрах "exe", "arg" заменяется на x86 или x64 взависимости от того на какой ОС запущен лаунчер. Это позволяет запускать exe-файлы взависимости от битности ОС. Определяется по наличию папка SysWow64. А также передаёт переменную окружения %P%. Для примеры можно из лаунчера запустить bat-файл с таким содержанием:
echo %P%
pause


Последний раз редактировалось: AZJIO (2022-02-22 20:44), всего редактировалось 27 раз(а)

[Цитировать]

    SergeyZV
  • 528
  • Стаж: 10 лет
  • Сообщений: 1259
  • Репутация:34

    [+] [-]
91368Можно ли сделать поддержку *.png-файлов в качестве фона?
А что конвертировать слабо?

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 лет 1 месяц
  • Сообщений: 1321
  • Репутация:127

    [+] [-]
Valerkan, очень маловероятный исход. PNG добавляет 140 кб (gif 7-15кб), но не даёт особых преимуществ. Его фишка полупрозрачность не используется, его индексированные цвета вполне может заменить gif, его неиндексированные цвета, то есть полноцветный, он как bmp будет размером, средняя индексированность (больше цветов чем у gif) конкурирует с jpg. При сохранении скриншотов иногда экспериментирую сколько будет весить jpg и png. Так что овчинка выделки не стоит, чтобы в архив ещё пару exe-файлов пихать и няньчиться с ними. Я уже думал батник писать, надоедает из-за небольшого обновления 8 exe-файлов компилировать, переименовывать и перемещать в папку архива.
Кстати кому сильно надо, не сложно самому сделать, исходник в комплекте. Скачать PureBasic, открыть исходник в 22-й строке есть код
; UseJPEGImageDecoder()
; UseGIFImageDecoder()
Добавить сверху UsePNGImageDecoder(), или даже все раскомментировать (убрать кавычки) и получить с поддержкой любого формата, больше ничего править не надо, с учётом что размер будет 73+(140+110+15)=340 кб. То есть эти модули будут встроены в программу и поддерживаться при открытии файлов указанных форматов.

[Цитировать]

    wadimus
  • 14910
  • Стаж: 8 лет 5 месяцев
  • Сообщений: 749
  • Репутация:91

    [+] [-]
AZJIO, друг, многие (и я) уже просто потерялись ..
ты генерируешь столько идей, твой лаунчер меняется каждый день ..
как говорил некий ростовский сиделец .. - астанавитесь! ag
финализируй лаунчер, убери из готового проекта лишнее и тестовое.
дай потестировать, попробовать .. поизучать.
ИМХО, однако az

[Цитировать]

    rezorustavi
  • 2337
  • Стаж: 9 лет 3 месяца
  • Сообщений: 918
  • Репутация:55

    [+] [-]
  • Откуда: Грузия, город Рустави
91378ты генерируешь столько идей, твой лаунчер меняется каждый день ..
Это же хорошо, что Лаунчер развивается. И исходники удалять не стоит, кому надо, какая проблема удалить.

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 лет 1 месяц
  • Сообщений: 1321
  • Репутация:127

    [+] [-]
wadimus, да я стараюсь чтобы каждая версия была финализированная. То есть не сырое с ошибками. Убирать из архива нет смысла, кому что надо тот своё возьмёт. А папка "color button test" напоминает, что можно на форуме PureBasic задать вопрос как объединить примеры и встроить в лаунчер с указанием цвета кнопки.
Я уже задал вопрос как подсветить края синим как в AutoIt3-весрии, но пока красивого решения нет. И, кстати, есть идея сделать даже лучше, если будет рабочий пример, можно кнопкой влево/вправ не дублировать аналог вверх/вниз, а перемещаться по столбцам, зная число строк, находясь например в 3-й строке, а всего их 6, то 3+6=9, то есть 9-я кнопка будет в 3-ей строке в следующем столбце, а если ряд не полный и я получу номер выше существующего то это же легко проверяется, если n>count, то n=count. Вот только стиль кнопки по умолчанию #PB_Button_Default не работает так хорошо, как в AutoIt3, он на стадии создания окна работает, а перемещать его методом изменения стиля не работает, даже нативным (родным) методом через WinAPI, но если в AutoIt3 работает, то надеюсь я просто делаю неправильно.
RASHAD дал более менее нормальный пример, по крайней мере исправил, изначально он тоже глючил, но я понимал, что он его исправит, так как там только была проблема в перемещении курсора активной кнопки. Но только он не синий, а кайма в точках.
Если кому лень проверять, вот скрин с рег-кнопками

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

[Цитировать]

    rezorustavi
  • 2337
  • Стаж: 9 лет 3 месяца
  • Сообщений: 918
  • Репутация:55

    [+] [-]
  • Откуда: Грузия, город Рустави
AZJIO,
aa Сделайте пожалуйста, хоть отдельным Лаунчером All in one, универсальный вариант, совместив в один функции LauncherGif, LauncherJPG, LauncherXYWH

[Цитировать]

    rekshd
  • 19892
  • Стаж: 6 лет 3 месяца
  • Сообщений: 331
  • Репутация:7

    [+] [-]
91389Если кому лень проверять, вот скрин с рег-кнопками
У меня по сокращённым ссылкам LauncherJPG_x64 не прыгал в заявленные ветки реестра
aq
После того, как заменил в LauncherJPG_x64.ini HKLM, HKCU, HKCR на полные (по типу HKEY_CLASSES_ROOT) - усё заработало ar
И в строчке с HKLM лишняя косая черта - с ней не прыгает ...

[Цитировать]

    SergeyZV
  • 528
  • Стаж: 10 лет
  • Сообщений: 1259
  • Репутация:34

    [+] [-]
Undeground, Был в андеграунде там и оставайся ab
Нам этот лаунчер нравится больше по многим причинам.

[Цитировать]

    rezorustavi
  • 2337
  • Стаж: 9 лет 3 месяца
  • Сообщений: 918
  • Репутация:55

    [+] [-]
  • Откуда: Грузия, город Рустави

91408Но есть же
Давайте на форуме к примеру Acronis True Image, будем рекомендовать и обсуждать Clonezilla... А потом начнем плакать, что зря получили предупреждения...
91412Нам этот лаунчер нравится больше по многим причинам.
Вполне согласен. ay

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 лет 1 месяц
  • Сообщений: 1321
  • Репутация:127

    [+] [-]
91404Лаунчером All in one
Сделал Launcher_x32_XYWH_GIF_JPG (без PNG)
я другую прогу ковыряю поэтому реагирую медленно.
rekshd,
91405HKLM, HKCU, HKCR
ок, раскрыл имена.

[Цитировать]

    rezorustavi
  • 2337
  • Стаж: 9 лет 3 месяца
  • Сообщений: 918
  • Репутация:55

    [+] [-]
  • Откуда: Грузия, город Рустави
91426Сделал Launcher_x32_XYWH_GIF_JPG (без PNG)
aa Большое спасибо, и PNG к нему пожалуйста прикрутите, как будет время. Пусть будет универсален. az


Последний раз редактировалось: rezorustavi (2022-01-06 18:16), всего редактировалось 1 раз

[Цитировать]

    korsak7
  • 107
  • Стаж: 10 лет
  • Сообщений: 1063
  • Репутация:62

    [+] [-]
Да вы озверели уже с этим PNG. Конвертировать картинку - 5 сек, вообще обленились

[Цитировать]

    rezorustavi
  • 2337
  • Стаж: 9 лет 3 месяца
  • Сообщений: 918
  • Репутация:55

    [+] [-]
  • Откуда: Грузия, город Рустави
korsak7,
aa Дорогой друг. Это пожелания, для универсальности. Решать, естественно разработчику. А поддержка PNG в Лаунчере начнет жрать много памяти? От этого Лаунчер начнет значительно тормозить, либо дольше запускаться, как если сравнить Photoshp CS6 с последней версией? Я не думаю...

[Цитировать]

    korsak7
  • 107
  • Стаж: 10 лет
  • Сообщений: 1063
  • Репутация:62

    [+] [-]
rezorustavi,
PNG добавляет 140 кб (gif 7-15кб), но не даёт особых преимуществ.
Конечно, в сравнении с полуторагиговыми распаковками это мелочь af
Но не надо плодить сущности без нужды

[Цитировать]

    rezorustavi
  • 2337
  • Стаж: 9 лет 3 месяца
  • Сообщений: 918
  • Репутация:55

    [+] [-]
  • Откуда: Грузия, город Рустави
korsak7,
140 кб это много? Приведу пример в 10 раз больше: 1400 килобайт = примерно 1,4 мегабайт, 1 фотка в хорошем качестве весит в 70 раз больше 140 кб. Это примерно, если взять средний фотоаппарат по нынишним меркам, который снимает хорошим качеством. А универсальность лишней не будет. az

Страница 15 из 32


Показать сообщения:    

Текущее время: 20-Апр 22:34

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы