Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.15;
Скачать: CL | DM;

Вниз

Как в TMenu отобразить список файлов какталога?   Найти похожие ветки 

 
Intell ©   (2003-04-19 10:48) [0]

Мне нужно, чтобы в SubMenu Tmenu отображался список файлов определённого каталога (директории). И по клику, допустим, открывает данный файл. Как открывать файл я знаю, просто рассказал что мне нужно.


 
Intell ©   (2003-04-24 19:14) [1]

Чё, никто этим не занимался?


 
Palladin ©   (2003-04-24 19:21) [2]

ну а справку посмотреть по TMenuItem?
про findfirst знаешь наверно уже...


 
Anatoly Podgorestky   (2003-04-24 21:37) [3]

Что только не творят с меню, бедное меню и пользователи. Особенно если натравить на него System32 из Виндовс НТ+


 
Юрий Зотов ©   (2003-04-24 22:25) [4]

> Intell © (19.04.03 10:48)

Какого размера будет Ваше меню, если в каталоге содержится хотя бы пара десятков файлов? А ведь их может быть и намного больше. Anatoly Podgorestky прав - бедняга юзер...

Почему бы для списка файлов не использовать, например, TListBox или TListView? Компактно, удобно, просто.

Ну, а уж если очень хочется, то см. в справке функции NewSubMenu и NewMenuItem. Или просто справку по TMenuItem.


 
Anatoly Podgorestky   (2003-04-24 22:28) [5]

НТ свыше 3000 файлоы, ХР наверно вообще ужас.


 
Palladin ©   (2003-04-24 22:32) [6]

поменьше количеством, но побольше качеством
у меня в XP насчитало 2149 (с директориями)


 
Не   (2003-04-25 02:40) [7]

Удалено модератором
Примечание: Поле "Имя" - для ника


 
Спрашивающий   (2003-04-25 03:22) [8]

Кстати колличество файлов это не проблема есть способы их довольно красиво выводить в меню, а вот файлы типа-
"Такое длинное имя файла уже будет смотреться в меню нехорошо но ведь нет гарантии что оно не окажется длиннее"


 
Palladin ©   (2003-04-25 06:54) [9]


> Не (25.04.03 02:40)

да я размер имел ввиду


 
Intell ©   (2003-04-25 07:22) [10]

Мне примерно нужно осуществить технологию, как в Winamp`е - список PlayList`ов. (В моём случае список файлов *.txt)

Юрий Зотов, если знаешь как в ListBox сделать, то не отказался бы от примерчика.


 
Юрий Зотов ©   (2003-04-25 08:15) [11]

> Intell © (25.04.03 07:22)

F1 нажмите. FindFirst. Там и примерчик есть. А что, с меню Вы собирались это делать как-то иначе?


 
Shirson ©   (2003-04-25 08:39) [12]

>Спрашивающий (25.04.03 03:22)
>Кстати колличество файлов это не проблема есть способы их довольно красиво выводить в меню, а вот файлы типа-
"Такое длинное имя файла уже будет смотреться в меню нехорошо но ведь нет гарантии что оно не окажется длиннее"


if lenght(SearchRec.name)>30 then newMenuItem.caption:=leftStr(SearchRec.name,27)+"...";
else newMenuItem.caption:=SearchRec.name;
newMenuItem.Hint:=SearchRec.name;


Ы? :)


 
Shirson ©   (2003-04-25 08:41) [13]

; после else считать ошибочным, и набранным в состоянии аффекта.

Исправленному верить.
Дата.
Подпись.
Печать.
:)


 
Intell ©   (2003-04-25 08:53) [14]

Shirson, чуточку подробней. Куда его вписать, и самое главное lenght и leftStr - выдаёт ошибку.


 
Спрашивающий   (2003-04-25 08:57) [15]

>Shirson ©
+Hint многострочный, но все же в ListBox можно сделать красивше
я уже через это прошел


 
Intell ©   (2003-04-25 08:59) [16]

Спрашивающий, а примерчик моГно?


 
Shirson ©   (2003-04-25 09:03) [17]

>Intell ©

Ууу.... как всё запущенно :)

lenght выдаёт ошибку, потому что праильно пишется Length (сам знаю :))
leftStr - функция StrUtils. Их в uses пропиши. Или используй команду copy(SearchRec.name,1,27)

Как с этим работать - открываешь Help, находишь Tmenu. У TMenu есть проперти items. Для этой проперти есть пример динамического создания элементов меню. Готовый и рассписанный. Разберись с ним.

SearchRec - подразумевается, что использовались команды FindFirst / FindNext - на них тоже есть пример в хелпе.

Если разберёшься - вопрос исчерпан. Если нет... начни с чего-нибудь по-проще. Значит у тебя пока недочтаточно опыта, для таких "заворотов" :)


 
Shirson ©   (2003-04-25 09:07) [18]

>Спрашивающий (25.04.03 08:57)
+Hint многострочный, но все же в ListBox можно сделать красивше
я уже через это прошел

А зачем hint многострочный? Не обязательно. Его сакральный смысл - хранить полное имя файла для обработки по клику + красивость отображения полного имени при наведении мышки.
Можно и с листбоксом. Можно c комбобоксом, можно ... да, считай, с чем угодно можно :) Чел попросил с меню, почему бы и нет? :)



 
Intell ©   (2003-04-25 09:09) [19]

Проблема была только с StrUtils. В остальном разберусь.


 
Shirson ©   (2003-04-25 09:27) [20]

>Intell © Проблема была только с StrUtils. В остальном разберусь.

Гут.

Еще совет. Проверяй сколько уже итемсов добавил в меню. Если их больше, скажем, 20 - меню будет ужасающим. Поэтому, добавляй не все файлы, а порцию в 10-15 итемов, а потом итем, который будет показывать следующую порцию. Но это потом. От простого к сложному, иначе погрязнешь :)



 
Спрашивающий   (2003-04-25 09:30) [21]

Дал бы судовольствием но исходники давно перекраил под другие цели, а писать заново долговато. На конкретные вопросы ответить готов пока сижу в Инете.


 
REA ©   (2003-04-25 10:04) [22]

А вот если в меню много пунктов, то там скролл не появится автоматом? Наверно нет.


 
Intell ©   (2003-04-25 10:13) [23]

Спрашивающий, я особо не тороплюсь. Если не затруднит, то если будет время, то сделай.
Shirson, насчёт "..иначе погрязнешь.." - я итак погряз, у меня пишутся одновременно 8 прог. Поэтому стал немного невнимателен. Но от примера по меню не откажусь. По поводу 10-15 - вполне согласен, особенно будет худо, у кого разрешение 800/600 или 640/480.


 
Shirson ©   (2003-04-25 10:48) [24]

>Intell
>у меня пишутся одновременно 8 прог. Поэтому стал немного невнимателен. Но от примера по меню не откажусь.

Гхм... я пишу одну прогу, точнее второй модуль этой проги, но от примера вынужден отказаться - некогда, уж сории.


 
Anatoly Podgorestky   (2003-04-25 10:56) [25]

Я до сих пор со смехом вспоминаю, как один пользователь засунул папку System в главное меню :-)
Если кто не знает, то это то, которое на кнопке Пуск/Start.
Дорого это ему обошлось :-)


 
Palladin ©   (2003-04-25 11:59) [26]


> Anatoly Podgorestky (25.04.03 10:56)

а что? что было то? :)
экспериментировать не хочется


 
Anatoly Podgorestky   (2003-04-25 12:04) [27]

А ты просто представь это меню без скролинга, в несколько рядов, на три тысячи файлов, в разрешение 800*600
Работать он не мог. Старый Win95 я сейчас проверил на 98 там этого ужаса нет, просто гигантский список в один ряд.


 
Intell ©   (2003-04-25 18:41) [28]

Вот-вот... Именно поэтому Shirson говорил о постраничном просмотре.


 
Intell ©   (2003-04-30 18:20) [29]

Проблему с меню я разрешил, благодаря вам - СПАСИБО! Теперь другой вопрос - как высветить список файлов (с определённым расширением) в ListBox. А то все предлагают, я решил попросить, т.к. столкнулся с этой проблемой тоже.
Помогите, Спрашивающий и остальные!!!

sergein@nojabrsk.ru


 
Anatoly Podgoretsky ©   (2003-04-30 18:43) [30]

Есть в Чаво местном


 
Intell ©   (2003-05-03 11:27) [31]

Удалено модератором
Примечание: Не надо больше флудить в этой ветке. А таких вопросов - через один в этом форуме.


 
Anatoly Podgoretsky ©   (2003-05-03 11:54) [32]

Пример смотри в местном Чаво или в Чаво fido7.ru.delphi



Страницы: 1 вся ветка

Текущий архив: 2003.05.15;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.017 c
1-46771
levova
2003-05-01 12:51
2003.05.15
TMainMenu


7-47017
JeskelA
2003-03-20 12:37
2003.05.15
Загрузка библиотек


3-46564
R@nger
2003-04-25 11:07
2003.05.15
Order By TimeField


14-46950
sucer
2003-04-25 17:09
2003.05.15
А почему бы этом сайте не разместить серийники для всех версий


3-46571
Alexis
2003-04-22 18:45
2003.05.15
CachedUpdates, ApplyUpdates & exceptions