Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Написание красивого прелоадера, Preloader, TStatusBar, загрузчик 
V
    Опции темы
Vitalishe
  Дата 6.1.2008, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте, 
есть необходимость создать прелодер для  программы, 
которая загружает довольно большой объем информации из базы данных;
прогил прелоадеры на ActionScript 2.0 - там все просто: GetBytesTotal (всего байт), 
BytesLoаded (загружено байт) и проблемма решена, 
в BCB нашел только получения размера файла...подскажите как получить значение байт, которые уже загружены;
PM MAIL   Вверх
artsb
Дата 6.1.2008, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 39
Всего: 64



Я так думаю, что это зависит от того каким образом ты загружаешь.
Так же непонятно, куда рыть и где смотреть.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Vitalishe
Дата 7.1.2008, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(artsb @ 6.1.2008,  15:28)
Я так думаю, что это зависит от того каким образом ты загружаешь.
Так же непонятно, куда рыть и где смотреть.

Хм... допустим варианта два:

! пока больше интересует 1-й вариант;

1-й. 
это локальное приложение, которое при запуске ехе файла и загрузки GUI начинает автоматически загружать БД из какого-либо места на HDD локальной машины.

2-й.
Расспределённое приложение.
Со вторым я думаю разберусь, когда придёт время - главное понять принцип;


Это сообщение отредактировал(а) Vitalishe - 7.1.2008, 13:27
PM MAIL   Вверх
artsb
Дата 7.1.2008, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 39
Всего: 64



Да нет, я имею ввиду куда вы загружаете данные (таблица или ещё что-нибудь) и как. Напишите код, в котором осуществляется загрузка. Так будет легче что-нибудь придумать.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Sharkfire
Дата 8.1.2008, 00:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Ну я варината собственно 2:

а) Показать загрузку каждой таблицы отдельно
б) Показать загрузку всех таблиц

в обоих случаях тебе поможет TProgressBar
тольков Б - сумма всех записей всех таблиц

ProgressBar1->Max - задание
ProgressBar1->Position - процесс выполнения инкрементируешь

Это сообщение отредактировал(а) Sharkfire - 8.1.2008, 00:23
PM MAIL ICQ   Вверх
artsb
Дата 8.1.2008, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 39
Всего: 64



Суть в том как узнать СКОЛЬКО уже ЗАГРУЖЕНО. Если я правильно понял, конечно.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Vitalishe
Дата 8.1.2008, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Sharkfire @ 8.1.2008,  00:20)
Ну я варината собственно 2:

а) Показать загрузку каждой таблицы отдельно
б) Показать загрузку всех таблиц

в обоих случаях тебе поможет TProgressBar
тольков Б - сумма всех записей всех таблиц

ProgressBar1->Max - задание
ProgressBar1->Position - процесс выполнения инкрементируешь

Спасибоsmile)) 

Добавлено @ 12:53
Цитата(artsb @ 8.1.2008,  00:46)
Суть в том как узнать СКОЛЬКО уже ЗАГРУЖЕНО. Если я правильно понял, конечно.

агаsmileабсолютно верно понял

Это сообщение отредактировал(а) Vitalishe - 8.1.2008, 12:54
PM MAIL   Вверх
artsb
Дата 8.1.2008, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 39
Всего: 64



Цитата(artsb @  7.1.2008,  23:21 Найти цитируемый пост)
Напишите код, в котором осуществляется загрузка. Так будет легче что-нибудь придумать. 




--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
artsb
Дата 8.1.2008, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 39
Всего: 64



Как вариант, можно так:
Определять размер файла не будем.

Каким-то образом определяем количество ячеек таблицы (которые нужно заполнить из файла) и пишем:
ProgressBar1->Min=0;
ProgressBar1->Max= количество ячеек;

Далее, загружая данные, в конце цикла, пишем:
ProgressBar1->Position++; // т.е. ещё одна ячейка заполнена

Это сообщение отредактировал(а) artsb - 8.1.2008, 16:27


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
SABROG
Дата 9.1.2008, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


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

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



Должно быть подобное событие:

Код

void __fastcall TForm1::ADODataSet1FetchProgress(TCustomADODataSet *DataSet, int Progress, int MaxProgress, TEventStatus &EventStatus)

{
  Caption = "Percent complete: " +
    IntToStr(Trunc(Progress / MaxProgress * 100)) + "%";
  Application->ProcessMessages;
}



--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
Vitalishe
Дата 10.1.2008, 01:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(SABROG @ 9.1.2008,  15:07)
Должно быть подобное событие:

Код

void __fastcall TForm1::ADODataSet1FetchProgress(TCustomADODataSet *DataSet, int Progress, int MaxProgress, TEventStatus &EventStatus)

{
  Caption = "Percent complete: " +
    IntToStr(Trunc(Progress / MaxProgress * 100)) + "%";
  Application->ProcessMessages;
}

спасибо большоеsmile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

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

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

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

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


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

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


 




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


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

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