xnik
- Стаж: 6 лет
- Сообщений: 486
- Репутация:11[+] [-]
- Откуда: СССР
|
avalat, скажите а у PECMD есть возможность сделать раскладной пункт меню?
|
avalat
- Стаж: 9 лет 9 месяцев
- Сообщений: 465
- Репутация:127[+] [-]
|
xnik, раскладной - это какой ? . такой ?
|
Отправлено: 04-Сен-2023 18:40
(спустя 2 часа 7 минут)
xnik
- Стаж: 6 лет
- Сообщений: 486
- Репутация:11[+] [-]
- Откуда: СССР
|
Вот такой пунктCALL @Windows1 _SUB Windows1,W375H280, ENVI @this.Font=14:Tahoma ITEM 1,L10T10W350H50, Пункт1, EXEC soft.exe,, _END И что бы он раскладывался по клику или по наведению и с низу открывались подпункты понял что _SUB надо прикрутить, но пока еще не совсем разобрался
|
avalat
- Стаж: 9 лет 9 месяцев
- Сообщений: 465
- Репутация:127[+] [-]
|
Так подойдёт ?CALL @Windows1 _SUB Windows1,W375H280, ENVI @this.Font=14:Tahoma ENVI a=m ITEM it1,L10T10W350H50, Пункт1,%a% ITEM it2,L10T70W350H25,Пункт2,,,16 ITEM it3,L10T105W350H25,Пункт3,,,16 ITEM it4,L10T140W350H25,Пункт4,,,16 _END _SUB m TEAM ENVI @it2.Visible=1|ENVI @it3.Visible=1|ENVI @it4.Visible=1|ENVI a=mm _END _SUB mm TEAM ENVI @it2.Visible=0|ENVI @it3.Visible=0|ENVI @it4.Visible=0|ENVI a=m _END
|
Gvint64
- Стаж: 4 года 6 месяцев
- Сообщений: 620
- Репутация:71[+] [-]
|
собрал из примеров avalat - получился такой. Если перетащить окно в другое место - то и субменю будет открыватся в другом месте.win _SUB win,W385H210,, CALL mn ITEM it,L10T10W360H40,ПУНКТ1,,, ITEM it1,L10T50W360H40,ПУНКТ2,,, ITEM ,L10T90W360H40,ВЫХОД,EXIT 2,, ENVI @it.MSG=0x0204: CALL@--popmenu:%f%.%g% mm ENVI @it1.MSG=0x0204: CALL@--popmenu:%f%.%g% mmm _END _SUB mm MENU ,111,EXEC notepad MENU ,222,EXEC mspaint MENU ,333, MENU - MENU ,444,EXIT _END _SUB mmm MENU ,555,EXEC notepad MENU ,666,EXEC mspaint MENU ,777, MENU - MENU ,888,EXIT _END _SUB mn ENVI @this.MSG=0x0046:pm _END _SUB pm ENVI @this.POS=?x:y TEAM CALC f=%x%+250|CALC g=%y%+200 _END
Последний раз редактировалось: Gvint64 (2023-09-05 15:40), всего редактировалось 1 раз
|
avalat
- Стаж: 9 лет 9 месяцев
- Сообщений: 465
- Репутация:127[+] [-]
|
Gvint64 А я так и не понял про... раскладной пункт меню...
|
Gvint64
- Стаж: 4 года 6 месяцев
- Сообщений: 620
- Репутация:71[+] [-]
|
avalat, Ну если мышкой передвинуть основное окно программы то и меню будет появлятся в поле этого окна - а не гдето посередине экрана или что то не так получилось?
|
avalat
- Стаж: 9 лет 9 месяцев
- Сообщений: 465
- Репутация:127[+] [-]
|
Gvint64, Да я не про это... нормально всё.101113avalat, скажите а у PECMD есть возможность сделать раскладной пункт меню? 101116 по клику или по наведению и с низу открывались подпункты
|
Gvint64
- Стаж: 4 года 6 месяцев
- Сообщений: 620
- Репутация:71[+] [-]
|
Просто как вариант - было интересно решить задачку с перемещением окна.
|
волчара
- Стаж: 9 лет 9 месяцев
- Сообщений: 595
- Репутация:44[+] [-]
- Откуда: Омск
|
avalat 101084Пример комбобокса для списка дисков Наверное, самый короткий вариант...
win _SUB win,W480H120, ENVI @win.font=11:Consolas //шрифт (или подобрать другой, моноширный) LIST comb,L20T20W430H40,,, //создаём комбобокс FDRV alld=*: //список всех дисков в формате С: D: E: и т.д. FORX* %alld%,&letr, //перечисляем буквы '&letr' в цикле {FDRV -vol v,fs=%letr% //получаем метку диска (v) и файл.систему (fs) PART -raw list drv %letr%,a //запрос данных о диске в переменную 'a' MSTR d,p,typ=<*>%a% //из неё получаем первые три значения - номер диска (d) , раздела (р) и тип (typ) TEAM FIND %letr%\=?,sz|CALC siz=%sz%/1G|LSTR siz=5,%siz% //получаем размер диска (siz) TEAM LSTR len=10,%v%|STRL* a1=len|LSTR lab=%a1%,%v%|CALC v1=11-%a1%|LSTR n=%v1%, , //выравниваем текст метки (lab) на 10 символов TEAM LSTR len2=5,%fs%|STRL* a2=len2|LSTR fs=%a2%,%fs%|CALC v2=6-%a2%|LSTR n2=%v2%, , //выравниваем текст (fs) в списке на 5 символов ENVI @comb.Add= %letr% %d%:%p% %lab%%n% %fs%%n2% %siz% Gb %typ% //заносим всё полученное в строку комбобокса FIND $%letr%=C:,ENVI @comb.Sel= %letr% %d%:%p% %lab%%n% %fs%%n2% %siz% Gb %typ% //выделяем первую строку } _END Чуток добавил эстетику win _SUB win,W480H120, ENVI @win.font=11:Consolas //шрифт (или подобрать другой, моноширный) LIST comb,L20T20W430H40,,, //создаём комбобокс FDRV alld=*: //список всех дисков в формате С: D: E: и т.д. FORX* %alld%,&letr, //перечисляем буквы '&letr' в цикле {FDRV -vol v,fs=%letr% //получаем метку диска (v) и файл.систему (fs) PART -raw list drv %letr%,a //запрос данных о диске в переменную 'a' MSTR d,p,typ=<*>%a% //из неё получаем первые три значения - номер диска (d) , раздела (р) и тип (typ) TEAM FIND %letr%\=?,sz|CALC siz=%sz%/1G|LSTR siz=5,%siz% //получаем размер диска (siz) TEAM LSTR len=10,%v%|STRL* a1=len|LSTR lab=%a1%,%v%|CALC v1=11-%a1%|LSTR n=%v1%, ,//выравниваем текст метки (lab) на 10 символов TEAM LSTR len2=5,%fs%|STRL* a2=len2|LSTR fs=%a2%,%fs%|CALC v2=6-%a2%|LSTR n2=%v2%, , //выравниваем текст (fs) в списке на 5 символов FIND $%typ%=DRIVE_FIXED,SET Buss=(HDD) FIND $%typ%=DRIVE_REMOVABLE,SET Buss=(USB_Flash) ENVI @comb.Add=%letr%\ %d%:%p% %lab% %n% %fs% %n2%%siz%Gb %Buss% //заносим всё полученное в строку комбобокса FIND $%letr%=C:,ENVI @comb.Sel=%letr%\ %d%:%p% %lab% %n% %fs% %n2%%siz%Gb %Buss% //выделяем первую строку } _END Думаю так симпатичней смотрится
|
Отправлено: 19-Дек-2023 23:22
(спустя 3 месяца 1 день)
Crachlow
- Стаж: 7 лет 2 месяца
- Сообщений: 10
- Репутация:0[+] [-]
|
avalat. извините за может детский вопрос, но как применять команды CMPS [-f] [-m] [-bin|-src[:Flag]] [-o] [-u] SrcFile [,] CmpsFile
|
волчара
- Стаж: 9 лет 9 месяцев
- Сообщений: 595
- Репутация:44[+] [-]
- Откуда: Омск
|
Crachlow, В справочнике все расписаноФормат: CMPS [-f] [-m] [-bin|-src[:Flag]] [-o] [-u] < SrcFile > [,] < CmpsFile > ────────────────────────────────────────────────── Функция Чтобы сжать или распаковать файл. ────────────────────────────────────────────────── Параметры: -f: Для сохранения метки формата исходного файла, (необязательно) -m: упаковать незашифрованным, -u: извлечь, -o старое шифрование -bin: зашифровать бинарный файл Flag Флаги: 1 удалить строки комментариев 2 перевести \r\n 4 объединить пустую строку 8 удалять коментарии в строке (опасно) ────────────────────────────────────────────────── Пример: CMPS -m B.wcs B.wcz //Упаковать файл B.wcs без шифрования, результат в B.wcz CMPS -bin cp.exe cp.wcz //Упаковать бинарный файл cp.exe с шифрованием в cp.wcz CMPS -u B.wcz B2.wcs //Распаковать файл B.wcz, результат в B.wcs ────────────────────────────────────────────────── Примечание Упакованный файл можно непосредственно загружать для выполнения или выполнить как встроенный сценарий, его значок, картинка и размер не ограничены. Зашифрованные файлы могут быть выполнены, но не могут быть извлечены.
|
avalat
- Стаж: 9 лет 9 месяцев
- Сообщений: 465
- Репутация:127[+] [-]
|
Crachlow, сделал когда то для себя
ENVI t=ENVI @win.POS=::::4 ENVI txt=перетащите файл *.wcs,*.ini,*.bat,*.cmd win _SUB win,W360H115,CodingPECMD,,,,,-top EDIT= ed,L10T10W326H20,,,0x100,0x000000#0xDAF0F1 LABE -left,L10T40W230H14, %txt%,,, LABE+ -center,L240T42W96H27,Старт,CALL st,0x000000#0x8CE8FF,15 _END _SUB st TEAM SIZE s=%ed%|FNAM na=%ed%|FDIR f=%ed%|FEXT ex=%ed% FIND $[%ex%=wcs | %ex%=txt | %ex%=bat | %ex%=cmd | %ex%=ini ],!TEAM MESS-icon1 Не выбран файл | ENVI @ed=|%t%|EXIT IFEX $%s%=0,TEAM MESS-icon1 Файл не найден *-2000|ENVI @ed=|%t%|EXIT CMPS "%ed%" "%f%\%na%.wcz" TEAM MESS-icon Файл зашифрован в %na%.wcz *-5000|ENVI @ed=|%t%|EXIT %t% _END
|
sablinov
- Стаж: 7 лет 7 месяцев
- Сообщений: 28
- Репутация:2[+] [-]
- Откуда: Выборг
|
а как это можно пактически применять?
|
avalat
- Стаж: 9 лет 9 месяцев
- Сообщений: 465
- Репутация:127[+] [-]
|
sablinov, В pecmd так шифруются скрипты, больше применений видимо нет
|
Страница 6 из 7
Текущее время: 21-Ноя 15:23
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|