AZJIO
  - Стаж: 7 лет 2 месяца
- Сообщений: 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-битной программы на ОС x64Esc=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, то 16LargeIcon2 = 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 = 200BtnMinH = 44Columns = 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-файл с таким содержанием:
Последний раз редактировалось: AZJIO (2022-02-22 20:44), всего редактировалось 27 раз(а)
|
 Отправлено: 17-Дек-2023 14:10
(спустя 1 год 11 месяцев)
AZJIO
  - Стаж: 7 лет 2 месяца
- Сообщений: 1321
- Репутация:127[+] [-]
|
strelec из справки:CRLF=~ - символ переноса используемый в параметрах warntext, hint, в названии кнопки при включенном флаге "многострочный текст". Например "warntext=текст~подсказки" будет 2 строки.
|
bighead
  - Стаж: 3 года 5 месяцев
- Сообщений: 423
- Репутация:24[+] [-]
|
AZJIO, strelec хочет, чтобы ты добавил дополнительные символы для переноса, видимо, чтобы в ini было проще ориентироваться, одного ~ мало  Т.е. чтобы бы эти варианты:"warntext=текст~ •подсказки" будет 2 строки. "warntext=текст~ • •подсказки" будет 2 строки. "warntext=текст ~ √подсказки" будет 2 строки. Также работали как и:"warntext=текст~подсказки" будет 2 строки.
|
AZJIO
  - Стаж: 7 лет 2 месяца
- Сообщений: 1321
- Репутация:127[+] [-]
|
bighead Что он именно так думал доказательств нет. Да и твоё предложение сделать это таким образом не очевидное для других. Должен быть конкретный вид без расплывчатых ситуаций. Добавление параметра в ini-файл для дополнительной точки это лишь усложнение проги либо функцией анализа следования символов за тильдой, либо включать в прогу поддержку регвыр 100 кб, а не каждый согласится приплюсовать к проге этот размер ради сомнительной фичи, которая нужна одному человеку. При этом ничего не мешает заменить тильду на "~ • •" во всех местах, где тильда рассматривается как перенос. Кстати в другой проге я использую перенос комбинацией }—•—{ так как в ней не просто какие то несколько строк, а обработка текста в котором такая комбинация может встретиться по тексту, поэтому нужна комбинация невозможная для встречи в тексте.
|
strelec
 - Стаж: 3 года 9 месяцев
- Сообщений: 34
- Репутация:1[+] [-]
|
AZJIOПри этом ничего не мешает заменить тильду на "~ • •" во всех местах, где тильда рассматривается как перенос. Спасибо, я, собственно, так и делаю - за тильдой добавляю символ (ы).ради сомнительной фичи, которая нужна одному человеку Просто подумал может кому понравится. Спасибо за ответы. Функции программы настолько обширны, что изучать и изучать ...
|
 Отправлено: 19-Дек-2023 17:49
(спустя 1 день 23 часа)
Michailo2000
 - Стаж: 1 год 7 месяцев
- Сообщений: 32
- Репутация:0[+] [-]
|
Здравствуйте. А не могли бы вы в своём лаунчере реализовать расширение и сужение окна мышкой. Ну как оно правильно называется "динамическое" вроде. Ну за края тащить мышкой до нужных размеров и при уменьшении окна появляется справа скролл прокрутки кнопок вниз-вверх. Спасибо.
|
sergeysvirid
  - Стаж: 10 лет
- Сообщений: 2644
- Репутация:127[+] [-]
- Откуда: 65 регион (GMT+11)
|
102281Прописывал "exe=AAA.vbs" - не срабатывает. strelec, Приветствую!  По идее должно срабатывать.-102281Может для запуска "exe=AAA.vbs" дополнительно необходим какой-то аргумент "arg=?". Чисто предположение, на практике естественно не проверял, может тогда попробовать как то так:exe=cscript.exe arg=AAA.vbs
|
 Отправлено: 26-Янв-2024 10:00
(спустя 2 часа 27 минут)
 Отправлено: 26-Янв-2024 11:50
(спустя 1 час 49 минут)
Alex1724
 - Стаж: 6 лет 11 месяцев
- Сообщений: 17
- Репутация:7[+] [-]
|
strelec, Здравствуйте. Если это имеете в видуТо так[gui] Title=Панель управления icon=shell32.dll IndexIcon = 21 FormWidth=425 FormHeight=370 Picture = img\Launcher.bmp GuiBkColor=3F3F3F AreaX=7 AreaY=125 AreaWidth=410 AreaHeight=220 Margin=2 Columns=2 Esc=1 Wow64=1 BorderW=2 BorderColor=FF9900 LargeIcon2 = 0 TipStyle=65 [CtrlPn] name=Панель управления exe=rundll32.exe arg=shell32.dll,Control_RunDLL icon=shell32.dll IndexIcon = 21 [Screen] name=Заставка exe=rundll32.exe arg=shell32.dll,Control_RunDLL desk.cpl desk,@ScreenSaver icon=shell32.dll IndexIcon = 25 [Pers] name=Персонализация exe=rundll32.exe arg=shell32.dll,Control_RunDLL desk.cpl,,2 icon=shell32.dll IndexIcon = 161 [Disp] name=Дисплей exe=rundll32.exe arg=shell32.dll,Control_RunDLL desk.cpl icon=shell32.dll IndexIcon = 25 [DevMan] name=Диспетчер устройств exe=rundll32.exe arg=devmgr.dll DeviceManager_Execute icon=setupapi.dll IndexIcon = 13 [SetExpl] name=Опции проводника exe=rundll32.exe arg=shell32.dll,Options_RunDLL 0 icon=explorer.exe [NetWork] name=Сетевые подключения exe=rundll32.exe arg=shell32.dll,Control_RunDLL ncpa.cpl icon=netshell.dll IndexIcon = 157 [msconf] name=Конфигурация системы hint=Run msconfig exe=%systemroot%\system32\msconfig.exe icon=msconfig.exe [mouse] name=Мышь exe=rundll32.exe arg=shell32.dll,Control_RunDLL main.cpl @0,0 icon=main.cpl [power] name=Электропитание exe=rundll32.exe arg=Shell32.dll,Control_RunDLL powercfg.cpl icon=stobject.dll [Next] name=Следующий hint=Новая вкладка exe=..\..\Launcher.exe arg=Launcher_x64.ini icon=..\..\Launcher.exe exit = 1 [Exit] name=Выход exe=Exit icon=shell32.dll IndexIcon = 131 warn=1 [tab0] name=Текущая exe=LauncherXYWH-UDLR_Uni.exe arg=LauncherXYWH.ini icon=img\tab.ico exit = 1 xywh=5,5,135,30 [tab1] name=Вкладка1 exe=LauncherXYWH-UDLR_Uni.exe arg=conf\LauncherXYWH1.ini exit = 1 xywh=145,5,135,30 [tab2] name=Вкладка2 exe=LauncherXYWH-UDLR_Uni.exe arg=conf\LauncherXYWH2.ini exit = 1 xywh=285,5,135,30 [tab3] name=Текущая exe=LauncherXYWH-UDLR_Uni.exe arg=LauncherXYWH.ini icon=img\tab.ico exit = 1 xywh=5,40,135,30 [tab4] name=Вкладка1 exe=LauncherXYWH-UDLR_Uni.exe arg=conf\LauncherXYWH1.ini exit = 1 xywh=145,40,135,30 [tab5] name=Вкладка2 exe=LauncherXYWH-UDLR_Uni.exe arg=conf\LauncherXYWH2.ini exit = 1 xywh=285,40,135,30 [tab6] name=Текущая exe=LauncherXYWH-UDLR_Uni.exe arg=LauncherXYWH.ini icon=img\tab.ico exit = 1 xywh=5,75,135,30 [tab7] name=Вкладка1 exe=LauncherXYWH-UDLR_Uni.exe arg=conf\LauncherXYWH1.ini exit = 1 xywh=145,75,135,30 [tab8] name=Вкладка2 exe=LauncherXYWH-UDLR_Uni.exe arg=conf\LauncherXYWH2.ini exit = 1 xywh=285,75,135,30 xywh=5,5,135,30 1) x=5 смещение кнопки влево, вправо 2) y=5 смещение кнопки вверх вниз 3) wh=135,30 ширина,высота кнопки [tab0] name=Текущая exe=LauncherXYWH-UDLR_Uni.exe arg=LauncherXYWH.ini icon=img\tab.ico exit = 1 xywh=5,5,135,30 К 5 прибавляем высоту кнопки 30+5 на зазор =40 [tab3] name=Текущая exe=LauncherXYWH-UDLR_Uni.exe arg=LauncherXYWH.ini icon=img\tab.ico exit = 1 xywh=5,40,135,30 FormWidth=425 - Ширина окна FormHeight=370 - Высота окна AreaX=7 - x-координата заданной области для кнопок AreaY=125 - y-координата области AreaWidth=410 - ширина области AreaHeight=220 - высота области
|
strelec
 - Стаж: 3 года 9 месяцев
- Сообщений: 34
- Репутация:1[+] [-]
|
Alex1724, Здравствуйте! Весьма благодарен за совет, буду осваивать, уж больно оболочка по душе!
|
Страница 32 из 32
Текущее время: 09-Май 21:18
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|