xnik
- Longevity: 6 years 1 month
- Posts: 489
- REPUTATION:12[+] [-]
- Location: СССР
|
avalat, скажите а у PECMD есть возможность сделать раскладной пункт меню?
|
avalat
- Longevity: 9 years 10 months
- Posts: 466
- REPUTATION:127[+] [-]
|
xnik, раскладной - это какой ? . такой ?
|
Отправлено: 04-Sep-2023 18:40
(after 2 hours 7 minutes)
xnik
- Longevity: 6 years 1 month
- Posts: 489
- REPUTATION:12[+] [-]
- Location: СССР
|
Вот такой пунктCALL @Windows1 _SUB Windows1,W375H280, ENVI @this.Font=14:Tahoma ITEM 1,L10T10W350H50, Пункт1, EXEC soft.exe,, _END И что бы он раскладывался по клику или по наведению и с низу открывались подпункты понял что _SUB надо прикрутить, но пока еще не совсем разобрался
|
avalat
- Longevity: 9 years 10 months
- Posts: 466
- REPUTATION: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
- Longevity: 4 years 6 months
- Posts: 625
- REPUTATION:72[+] [-]
|
собрал из примеров 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
Last edited by Gvint64 on 2023-09-05 15:40; edited 1 time in total
|
avalat
- Longevity: 9 years 10 months
- Posts: 466
- REPUTATION:127[+] [-]
|
Gvint64 А я так и не понял про... раскладной пункт меню...
|
Gvint64
- Longevity: 4 years 6 months
- Posts: 625
- REPUTATION:72[+] [-]
|
avalat, Ну если мышкой передвинуть основное окно программы то и меню будет появлятся в поле этого окна - а не гдето посередине экрана или что то не так получилось?
|
avalat
- Longevity: 9 years 10 months
- Posts: 466
- REPUTATION:127[+] [-]
|
Gvint64, Да я не про это... нормально всё.101113avalat, скажите а у PECMD есть возможность сделать раскладной пункт меню? 101116 по клику или по наведению и с низу открывались подпункты
|
Gvint64
- Longevity: 4 years 6 months
- Posts: 625
- REPUTATION:72[+] [-]
|
Просто как вариант - было интересно решить задачку с перемещением окна.
|
волчара
- Longevity: 9 years 10 months
- Posts: 598
- REPUTATION:45[+] [-]
- Location: Омск
|
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-Dec-2023 23:22
(after 3 months 1 day)
Crachlow
- Longevity: 7 years 2 months
- Posts: 10
- REPUTATION:0[+] [-]
|
avalat. извините за может детский вопрос, но как применять команды CMPS [-f] [-m] [-bin|-src[:Flag]] [-o] [-u] SrcFile [,] CmpsFile
|
волчара
- Longevity: 9 years 10 months
- Posts: 598
- REPUTATION:45[+] [-]
- Location: Омск
|
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
- Longevity: 9 years 10 months
- Posts: 466
- REPUTATION: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
- Longevity: 7 years 7 months
- Posts: 28
- REPUTATION:2[+] [-]
- Location: Выборг
|
а как это можно пактически применять?
|
avalat
- Longevity: 9 years 10 months
- Posts: 466
- REPUTATION:127[+] [-]
|
sablinov, В pecmd так шифруются скрипты, больше применений видимо нет
|
Page 6 of 7
Current time is: 02-Dec 00:28
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
|
|