Вверх ↑
Этот топик читают: Гость
Ответов: 5227
Рейтинг: 587
#1: 2009-02-07 13:11:02 ЛС | профиль | цитата
Усечённый вариант контекстного меню проводника для папок (вероятно и для файлов можно сделать), за неимением никакого на данный момент может кому и пргодится
схема code_11719.txt

------------ Дoбавленo:

Сделал универсальный диски, папки, файлы
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
файлы: 1code_11719.txt [1.9KB] [312]
vip
#1.1контекстная реклама от партнеров
Главный модератор
Ответов: 2997
Рейтинг: 395
#2: 2009-02-08 11:44:28 ЛС | профиль | цитата
Если объединить труд nesco и andrestudio, то получается такой маленький FileBrowser:

карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
1
Голосовали:andrestudio
Ответов: 3851
Рейтинг: 159
#3: 2009-02-08 12:52:10 ЛС | профиль | цитата
andrestudio,

Ответов: 1700
Рейтинг: 100

нулей то ..
карма: 0
начавший
0
Ответов: 5227
Рейтинг: 587
#4: 2009-02-08 13:53:21 ЛС | профиль | цитата
Nic, да, для таких схем в самый раз
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Администрация
Ответов: 15294
Рейтинг: 1518
#5: 2009-02-08 14:48:42 ЛС | профиль | цитата
если б там еще Drag&Drop работал... Можно было и аналог TotalCommander сделать
карма: 26
0
Ответов: 5227
Рейтинг: 587
#6: 2009-02-09 21:50:20 ЛС | профиль | цитата
Попробовал формирование списка сделать на скрипте, событие Path зарезервировано для формирования списка иконок (работает)
короче ещё одна версия, схемаcode_11746.txt

------------ Дoбавленo:

Help Кто знает как сделать сортировку по расширению, имени, размеру и дате
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
1
файлы: 1code_11746.txt [12.6KB] [1083]
Голосовали:pav
Гость
Ответов: 17029
Рейтинг: 0
#7: 2009-02-12 22:18:05 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-03 16:19:39
карма: 0

0
Ответов: 139
Рейтинг: 4
#8: 2009-02-12 22:19:16 ЛС | профиль | цитата
выше написал я
карма: 0

0
Ответов: 5227
Рейтинг: 587
#9: 2009-02-12 22:34:59 ЛС | профиль | цитата
Добавил системные иконки схема code_11771.txt

Могу попробовать в скрипт добавить историю и маску для файлов, с сортировкой будет очень медлено работать. Ошибка может быть с FPC он пути с кирилицей не понимает.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
1
файлы: 1code_11771.txt [12.6KB] [500]
Голосовали:Sniper36
Ответов: 1088
Рейтинг: 112
#10: 2009-02-13 11:46:35 ЛС | профиль | цитата
Задумка интересная, но по производительностиресурсам проигрывает проводнику
Плюс пара багов: При входе в любую папку а затем на верхний уровень исчезают все иконки - как повторить не знаю сейчас не исчезают.
При входе папку Windows программа вылетает с Runtime 216.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 5227
Рейтинг: 587
#11: 2009-02-13 12:15:49 ЛС | профиль | цитата
Sniper36, Первый баг у меня не проявляется а второй иногда, с чем связано не знаю. В быстродействии скрипт всегда будет проигрывать коду. Баластво это конечно по большому счёту, но как пример сойдёт
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 3851
Рейтинг: 159
#12: 2009-02-13 15:08:28 ЛС | профиль | цитата
да, иконки у меня тоже пропадали, но что-то повторить не получается - думал у меня только, типа особенности винды..
карма: 0
начавший
0
Разработчик
Ответов: 26068
Рейтинг: 2121
#13: 2009-02-13 15:21:45 ЛС | профиль | цитата
Андрей. писал(а):
да, иконки у меня тоже пропадали

Есть файлы, которые не имеют связанных иконок. Думаешь, я в своей схеме File_Browsera зря использцую иконку замены при пустой иконке файла
карма: 22

0
Ответов: 139
Рейтинг: 4
#14: 2009-02-13 16:16:43 ЛС | профиль | цитата
В последнем примере контекстое меню отображается, но действия не выполняются.
andrestudio, упрости код, что бы только выдавалось контекстое меню папок и файлов как в Win, а все остальное можно и на стандартных элементах сделать, ведь подобного компанента нет в палитре HiAsm.
карма: 0

0
Ответов: 5227
Рейтинг: 587
#15: 2009-02-13 16:44:03 ЛС | профиль | цитата
nesco, в своей схеме я тоже это использую, тут где то в другом месте собака зарыта.
------------ Дoбавленo:

pav, ну ты шутник ё-маё . Скачал последний пример всё работает.

andrestudio писал(а):
Усечённый вариант контекстного меню проводника для папок


pav писал(а):
упрости код, что бы только выдавалось контекстое меню папок и файлов как в Win


знал бы прикуп, жил бы в сочи

для папок и файлов схема

Add(MainForm,2574047,133,133)
{
Width=424
Height=195
Position=1
}
Add(VBJScript,1375607,336,182)
{
WorkPoints=#13:doCreatePopup|8:doComand|
EventPoints=#8:onCreate|5:onAdd|7:onClear|
Script=#12:dim Str_menu|8:dim Temp|10:dim Folder|12:dim FileName|0:|28:Function doWork (Data,Index)|0:|17:Select Case Index|0:|24: Case "doCreatePopup"|4: |40: sys.onClear nil 'очистим список меню|4: |56: Set FSO = CreateObject("Scripting.FileSystemObject")|15: Temp = Data|4: |32: If FSO.FileExists(Temp) Then|36: FileName = FSO.GetFileName(Temp)|42: Folder = FSO.GetParentFolderName(Temp)|8: |52: Set objShell = CreateObject("Shell.Application")|47: Set objFolder = objShell.NameSpace(Folder) |59: Set objFolderItem = objFolder.ParseName(FileName) |38: Set colVerbs = objFolderItem.Verbs|4: |34: For i = 0 to colVerbs.Count -1|35: Str_menu = colVerbs.Item(i)|31: if Str_menu = nil then |22: Str_menu = "-"|14: end if|26: sys.onAdd Str_menu|8: Next|4: |4: |8: Else|0:|52: Set objShell = CreateObject("Shell.Application")|45: Set objFolder = objShell.NameSpace(Data) |44: Set objFolderItem = objFolder.Self |38: Set colVerbs = objFolderItem.Verbs|4: |34: For i = 0 to colVerbs.Count -1|35: Str_menu = colVerbs.Item(i)|31: if Str_menu = nil then |22: Str_menu = "-"|14: end if|26: sys.onAdd Str_menu|12: Next |4: |10: End if|0:|56: sys.onCreate nil 'разворачиваем контекстное меню |4: |4: |4: |67: Case "doComand" ' Процедура выполнит команду контекстного меню|4: |56: Set FSO = CreateObject("Scripting.FileSystemObject")|32: If FSO.FileExists(Temp) Then|4: |56: Set objShellApp = CreateObject ("Shell.Application")|50: Set objFolder = objShellApp.NameSpace(Folder) |53: Set objFolderItem = objFolder.ParseName(FileName)|37: Set objFIVs = objFolderItem.Verbs|32: For i=0 To objFIVs.Count - 1|36: Set objFIV = objFIVs.Item(i)|34: If objFIV.Name = Data Then|23: objFIV.DoIt|20: Exit For|14: End If|8: Next|4: |8: Else|4: |56: Set objShellApp = CreateObject ("Shell.Application")|56: Set objFolderItem = objShellApp.NameSpace(Temp).Self|39: Set objFIVs = objFolderItem.Verbs()|32: For i=0 To objFIVs.Count - 1|36: Set objFIV = objFIVs.Item(i)|34: If objFIV.Name = Data Then|23: objFIV.DoIt|20: Exit For|14: End If|12: Next |8: |10: End if|0:|10:End Select|2: |13:End Function |
UseName=0
link(onCreate,932408:doPopupHere,[])
link(onAdd,932408:doAddItem,[])
link(onClear,932408:doClear,[])
}
Add(Button,10991999,189,182)
{
Left=10
Top=15
Caption="File"
link(onClick,9680449:doExecute,[])
}
Add(PopupMenu,932408,392,175)
{
TranspIcon=1
Point(onSelectStr)
link(onSelectStr,1375607:doComand,[(440,188)(440,227)(324,227)(324,195)])
}
Add(Browse,8293395,238,133)
{
link(onBrowse,5874997:doWork1,[(291,139)])
}
Add(ODialog,9680449,238,182)
{
link(onExecute,5874997:doWork2,[])
}
Add(Button,15676343,189,133)
{
Left=10
Top=50
Caption="Folder"
link(onClick,8293395:doBrowse,[])
}
Add(HubEx,5874997,287,175)
{
link(onEvent,1375607:doCreatePopup,[])
}



------------ Дoбавленo:

pav, все примеры на VB которые мне попадались работают с API SHELL32.dll, делал пример я с ActiveX в схемах, там контекстное меню полностью функционально.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)