Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  253

•  TDictionary Custom Sort  3 401

•  Fast Watermark Sources  3 157

•  3D Designer  4 914

•  Sik Screen Capture  3 408

•  Patch Maker  3 611

•  Айболит (remote control)  3 815

•  ListBox Drag & Drop  3 075

•  Доска для игры Реверси  82 421

•  Графические эффекты  4 012

•  Рисование по маске  3 311

•  Перетаскивание изображений  2 687

•  Canvas Drawing  2 826

•  Рисование Луны  2 639

•  Поворот изображения  2 250

•  Рисование стержней  2 190

•  Paint on Shape  1 590

•  Генератор кроссвордов  2 271

•  Головоломка Paletto  1 789

•  Теорема Монжа об окружностях  2 284

•  Пазл Numbrix  1 701

•  Заборы и коммивояжеры  2 078

•  Игра HIP  1 296

•  Игра Go (Го)  1 248

•  Симулятор лифта  1 493

•  Программа укладки плитки  1 241

•  Генератор лабиринта  1 565

•  Проверка числового ввода  1 385

•  HEX View  1 515

•  Физический маятник  1 372

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

TDirectoryOutline. Ошибка в свойстве Directory



Автор: Коробенков Владимир

При присвоении свойству TDirectoryOutline.Directory строки, являющейся действительным файловым путем, компонент должен отобразить этот путь раскрытием соответствующей ветви дерева директорий (вызывая защищенный метод WalkTree(). Из-за ошибки в методе SetDirectory WalkTree не вызывается. Ошибка выявлена в Delphi 5, не исправлена и в Delphi 6.

ТИПОВЫЕ РЕШЕНИЯ.
  1. В методе SetDirectory модуля DirOutln.pas строку
    if Copy(FDirectory, Length(FDirectory) - 1, 2) = ':\' then WalkTree(TempPath);
    
    заменить на
    if Copy(FDirectory, Length(FDirectory) - 1, 2) <> ':\' then WalkTree(TempPath);
    
    и перекомпилировать модуль.

  2. Просто не использовать этот компонент.

КОММЕНТАРИЙ:

Проверено (Delphi 5). Ошибка реально существует. По-видимому, этот код не изменялся от самых ранних версий.

Малоизвестный компонент TDirectoryOutline находится на странице Samples палитры компонентов. Это простой и вполне приличный способ получить визуальное дерево директорий. Он построен на основе TCustomGrid->TCustomOutline, а не на базе стандартного Win32-контрола TreeView, и потому лишен присущих ему ограничений и недостатков.

Модификация исходников, не входящих, строго говоря, в VCL, - не есть большая беда. Как вариант, можно предложить в подобных случаях держать модифицированную копию модуля у себя в проекте.





Похожие по теме исходники

Directory Change

Active Directory Create User

Directory Monitor

Mackintosh Directory Tree

 



Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте