Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выбор компонентов 
:(
    Опции темы
Anikmar
Дата 4.4.2009, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 34
Всего: 59



Цитата(xvr @  4.4.2009,  09:59 Найти цитируемый пост)
См. сюда и сюда. Теперь понял?   

Краткость не всегда сестра таланта. Я имел  виду, что метод Add неплох - надо  только буфер парсить перед добавлением, чтобы построчно добавлять. Но теперь знаю, что и это не вариант:
Ворд открыл этот файл за 1 минуту
Вордпад - 22 секунды
RichEdit - не знаю, до сих пор открывает (минут 10 прошло) - причем подвесил комп минут на 5 так, что даже NumLock не срабатывал. (Открываю тупо LoadFromFile)

Из этого вывожу свое ИМХО:
Использовать RichEdit для таких громадных файло не получится. Как они там это внутри делают не знаю, - можно поковырять исходник рича и переделать его по-своему, но все-таки не то.
Второе ИМХО:
Хотелось бы подробнее узнать постановку задачи. Чует мое сердце, что тут все можно быстрее организовать - небольшая промывка мозгов пользователям и перестройка подхода к системе.

Это сообщение отредактировал(а) Anikmar - 4.4.2009, 11:07
PM MAIL ICQ   Вверх
xvr
Дата 4.4.2009, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(Anikmar @ 4.4.2009,  11:06)
Цитата(xvr @  4.4.2009,  09:59 Найти цитируемый пост)
См. сюда и сюда. Теперь понял?   

Краткость не всегда сестра таланта. Я имел  виду, что метод Add неплох - надо  только буфер парсить перед добавлением, чтобы построчно добавлять. Но теперь знаю, что и это не вариант:
Ворд открыл этот файл за 1 минуту
Вордпад - 22 секунды
RichEdit - не знаю, до сих пор открывает (минут 10 прошло) - причем подвесил комп минут на 5 так, что даже NumLock не срабатывал. (Открываю тупо LoadFromFile)

RichEdit нужен правильный - 2.0 и Unicode. WordPad использует именно его

Цитата

Из этого вывожу свое ИМХО:
Использовать RichEdit для таких громадных файло не получится. Как они там это внутри делают не знаю, - можно поковырять исходник рича и переделать его по-своему, но все-таки не то.
Нету у него исходника - используется стандартный виндовый RichEdit контрол. 2006 CG использует версию 1.0, причем Ansi. 2009го у меня нет - посмотреть не могу  smile Если там 2.0W - то все срастется

Цитата

Второе ИМХО:
Хотелось бы подробнее узнать постановку задачи. Чует мое сердце, что тут все можно быстрее организовать - небольшая промывка мозгов пользователям и перестройка подхода к системе.
С этим согласен  smile 
Вообще идея показывать пользователю документ на тысячи страниц, list box'ы с сотнями тысяч элементов, картинки с тысячами элементов на них и пр. гигантоманские планы могут быть на ура встречены только закоренелыми мазохистами в 3м поколении  smile
Сделать такой интерфейс можно, но подумайте о своих пользователях - им же придется часами сидеть перед экраном, что бы среди всей этой кучи хлама найти крупицу информации, которая их интересует. Иголку в стоге сена найти будет проще  smile 
PM MAIL   Вверх
Anikmar
Дата 4.4.2009, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 34
Всего: 59



Цитата(xvr @  4.4.2009,  12:08 Найти цитируемый пост)
Нету у него исходника - используется стандартный виндовый RichEdit контрол. 2006 CG использует версию 1.0, причем Ansi. 2009го у меня нет - посмотреть не могу   Если там 2.0W - то все срастется

Я проверял на 2009. А как узнать версию?

Цитата(xvr @  4.4.2009,  12:08 Найти цитируемый пост)
Вообще идея показывать пользователю документ на тысячи страниц, list box'ы с сотнями тысяч элементов, картинки с тысячами элементов на них и пр. гигантоманские планы могут быть на ура встречены только закоренелыми мазохистами в 3м поколении  
Сделать такой интерфейс можно, но подумайте о своих пользователях - им же придется часами сидеть перед экраном, что бы среди всей этой кучи хлама найти крупицу информации, которая их интересует. Иголку в стоге сена найти будет проще    

Целиком и полностью согласен.
PM MAIL ICQ   Вверх
Dmi3ev
Дата 4.4.2009, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



Цитата

Вообще идея показывать пользователю документ на тысячи страниц, list box'ы с сотнями тысяч элементов, картинки с тысячами элементов на них и пр. гигантоманские планы могут быть на ура встречены только закоренелыми мазохистами в 3м поколении

именно для таких и должна быть возможность загрузки всего файла целиком...
Цитата

Сделать такой интерфейс можно, но подумайте о своих пользователях - им же придется часами сидеть перед экраном, что бы среди всей этой кучи хлама найти крупицу информации, которая их интересует. Иголку в стоге сена найти будет проще

как раз поиск - главная идея...

Anikmar правильно сказал, расскажу немного о задаче.
Задача собственно такова:
если кто сталкивался (а я думаю таких много) с Гарантом и Консультантом, то мне нужно что-то вроде этого сделать (менее масштабно, да и алгоритмы поиска попроще будут само собой), но в области (это уже не суть важно, оставлю в секрете  smile ), которую они не затронули...
расскажу подробнее с точки зрения пользователя:
1) запустил прогу
2) ввел интересующий его запрос
3) ему вывелись результаты (список документов, где встречается текст запроса, или что-то похожее на него)
4) после этого пользователь выбирает документ из списка (или его часть, главу, статью и тд, смотря какого типа документ, смотря какой запрос)
и тут возможны варианты, если пользователь-обычный, то он посмотрит часть документа и успокоится (получив необходимую информацию продолжит работу), а если он из партии юных мазохистов, то ему тоже будет чем заняться (а такие есть и их не один и не два)... именно для них будет возможность загрузки всего файла... + в нем будет сделана подсветка текста, который удовлетворяет запросу...
5) пользователь сделал закладку, чтобы в следующий раз не искать, вышел...
Про остальные задумки не буду рассказывать, потому как пока реализовано немного... Дойдет дело, расскажу...
Цитата

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

Таким макаром, как мы делаем можно грузить и не такие файлы, грузится порядка 2 сек у меня... я про uk.txt.
поэтому мне такую опцию надо предложить, да и вообще полезно будет уметь такое делать с Ричем...

xvr, пока не было еще возможности проверить твой вариант, вечером отпишусь...

Anikmar, извини, если обидел вот этим
Цитата

Ты не в теме...

не хотел обидеть... ни в коем случае)))


--------------------

PM MAIL   Вверх
Anikmar
Дата 4.4.2009, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 34
Всего: 59



Цитата(Dmi3ev @  4.4.2009,  15:35 Найти цитируемый пост)
не хотел обидеть... ни в коем случае))) 

И не думал обижаться  smile 

Я почему-то сразу о гаранте и подумал. Мне кажется надо БД как в гаранте. Раскинуть документы по статьям/собственно документам, сделать нормальную индексацию для поиска.

Загрузить в рич большой текст можно - работать с ним неудобно. Тут полноценный гипертекст нужен. С перекрестными ссылками на смежные документы и т.п.

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

PM MAIL ICQ   Вверх
xvr
Дата 4.4.2009, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(Anikmar @ 4.4.2009,  12:39)
Цитата(xvr @  4.4.2009,  12:08 Найти цитируемый пост)
Нету у него исходника - используется стандартный виндовый RichEdit контрол. 2006 CG использует версию 1.0, причем Ansi. 2009го у меня нет - посмотреть не могу   Если там 2.0W - то все срастется

Я проверял на 2009. А как узнать версию?

Варианта 2:
  •  Посмотреть в исходниках (в 2006 - source/Win32/vcl/ComCtrls.pas)
  •  Сделать форму с ним, запустить, с помощью Spy++ (VS) или WinSight (BCB) посмотреть класс окна

Добавлено через 12 минут и 21 секунду
Цитата(Dmi3ev @ 4.4.2009,  15:35)
расскажу подробнее с точки зрения пользователя:
1) запустил прогу
2) ввел интересующий его запрос
3) ему вывелись результаты (список документов, где встречается текст запроса, или что-то похожее на него)
4) после этого пользователь выбирает документ из списка (или его часть, главу, статью и тд, смотря какого типа документ, смотря какой запрос)
и тут возможны варианты, если пользователь-обычный, то он посмотрит часть документа и успокоится (получив необходимую информацию продолжит работу), а если он из партии юных мазохистов, то ему тоже будет чем заняться (а такие есть и их не один и не два)... именно для них будет возможность загрузки всего файла... + в нем будет сделана подсветка текста, который удовлетворяет запросу...

А там отдельный файл достигает нескольких тысяч страниц? Если нет, то и проблемы нет - не надо все результаты запроса показывать в виде одного текста. Нужна удобная система гипертекстовых ссылок, причем все должно показываться на одном экране (никаких открывающихся окон и пр)

PM MAIL   Вверх
Dmi3ev
Дата 4.4.2009, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



Цитата

А там отдельный файл достигает нескольких тысяч страниц?

почему, я в самом начале темы сказал, 500-1000, в файле, который я выложил порядка 350 страниц... да и больше не будет похоже, те 350 - максимум...
Цитата

Если нет, то и проблемы нет - не надо все результаты запроса показывать в виде одного текста.

все результаты не буду, но если пользователь зашел в один из них (выбрал из списка результатов главу, часть, статью, неважно, те какую-то небольшую составляющую большого документа (350 страниц )), надо чтобы была возможность посмотреть документ целиком (может этим будут пользоваться единицы, но так надо)...
Тем более, появился спортивный интерес так сделать, я думал, что воспользуюсь LoadFromFile и долов-то, ан нет... Теперь знаю, что не так-то все просто))) Уже даже мне хочется такую штуку вбабахать в программе)))


--------------------

PM MAIL   Вверх
Dmi3ev
Дата 4.4.2009, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



пока вот в таком виде, боевом, но уже работоспособном:
Код

        RichEdit1->Clear();
        int cPos=0;
        char buf[256];
        int nRead;
        TFileStream *fi=new TFileStream("D:\\uk.txt", Sysutils::fmOpenRead);

        ProgressBar1->Max=fi->Size;
        ProgressBar1->Visible=true;
        ProgressBar1->Position=ProgressBar1->Min;

        fi->Seek(0, soFromBeginning);
        do
        {
                nRead = fi->Read(buf, sizeof(buf));
                RichEdit1->SelStart=cPos;
                RichEdit1->SelLength=0;
                RichEdit1->SelText=String(buf,nRead);
                cPos+=nRead;
                ProgressBar1->Position=fi->Position;
                Application->ProcessMessages();
        }
        while(nRead);

        ProgressBar1->Visible=false;

        delete fi;

ProgressBar специально для mrbrooks, больше ни для кого и ни для чего smile Ему так хотелось, чтобы я вломил, и я вломил  smile 
Всем спасибо, тему пока не закрываю, еще не всё smile 

Это сообщение отредактировал(а) Dmi3ev - 4.4.2009, 17:25


--------------------

PM MAIL   Вверх
Gradov
Дата 5.4.2009, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 124
Регистрация: 31.10.2006

Репутация: 2
Всего: 3



Цитата(Anikmar @  4.4.2009,  11:06 Найти цитируемый пост)
Использовать RichEdit для таких громадных файло не получится. Как они там это внутри делают не знаю, - можно поковырять исходник рича и переделать его по-своему, но все-таки не то.


Цитата(Dmi3ev @  4.4.2009,  16:29 Найти цитируемый пост)
я думал, что воспользуюсь LoadFromFile и долов-то, ан нет... Теперь знаю, что не так-то все просто))) Уже даже мне хочется такую штуку вбабахать в программе)))


Если со скоростью TRichEdit проблемы можно попробовать ActiveX компонент TRichTextBox, у него есть свой-во FileName. Забиваешь туда имя своего файла и все. Твой 4-х гигабайтный rtf-файл 2 сек. открывает. Также как, например File Lister в Total Commander по F3. 
PM MAIL   Вверх
mrbrooks
Дата 6.4.2009, 07:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(Anikmar @  4.4.2009,  12:39 Найти цитируемый пост)
Я проверял на 2009. А как узнать версию?

В хелпе написано. 

Цитата(Dmi3ev @  4.4.2009,  17:06 Найти цитируемый пост)
ProgressBar специально для mrbrooks, больше ни для кого и ни для чего smile Ему так хотелось, чтобы я вломил, и я вломил  smile 

 smile 
PM MAIL   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0583 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.