jaumDoDelphi Postado Maio 26, 2011 Denunciar Share Postado Maio 26, 2011 Ola amigos do Script Brasil!Estou desenvolvendo meu programa de cadastro de filmes a mais de 1 anos!e toda hora acho uma ideia melhor e outra não, para implementar este programinha.Agora estou com problemas para adaptar o uso do TProgressBar ao me programa.1 - Como utilizei BMP para o banco access BLOB - no tamanho de 190x260 = 145kb2 - hj com mais de 260 filmes cadastrados o banco já tem 37MB3 - quando inicio ele no pendrive demora uns 4 segundos para abrir o banco4 - dai já pensando no futuro por exemplo 500filmes vai dar uns 70MB do DB5 - percebi que demora quando ele vai Abrir a QueryMovies que estao cadastradas os filmes e postersquando eu execulto o comando ADOQMovies.Active := true; que demora os 4seg.Gostaria de saber se é possível mostrar o progresso do carregamento do banco ACCESS com TADOConnection, TADOQuery? desde já agradeço! ;) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Maio 26, 2011 Denunciar Share Postado Maio 26, 2011 considerações:converta BMP para JPG ...isso reduz ainda mais o tamanho da figurareveja a definição para os campos BLOB, voce pode limitar o seu tamanhofaça acesso a tabela com filmes somente depois do programa ser carregado, de preferencia no clique do item do Menuvoce pode usar um componente Gauge no lugar do ProgressBar, ele mostrara a porcentagem de carregamentono exemplo abaixo é só substituir a Query pela AdoQueryprocedure TForm1.Button1Click(Sender: TObject); begin Query1.Open;{ abre a table query que seja} Gauge1.MaxValue:=query1.RecordCount; {diz que o valor max do gauge é o valor de regitrs a serem processados pela na tabela} Query1.First; {posiciona no inicio da tabela} if not Query1.Eof then {enquanto a tabela não estiver, vai executar o codigo abaixo } repeat { seus comandos para a tabela } Gauge1.Progress:=Gauge1.Progress + 1; if Gauge1.Progress = Gauge1.MaxValue then begin showmessage('Processo Terminado!'); end; Query1.Next { move para o próximo registro} until Query1.Eof; {finaliza o programa ao final da tabela} end;OBS: No forum tem varios posts sobre isso .... pesquise pela palavra Gauge ou ProgressBarabraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jaumDoDelphi Postado Maio 26, 2011 Autor Denunciar Share Postado Maio 26, 2011 Opa Jhonas obrigado pelo codigo.Então eu já tinha feito a pesquisa no forum e no google.Estou começando a achar que n é possível mostrar a barra "CARREGANDO A QUERY" :unsure: Passei o codigo que você postou para meu programa e a barra só começa a contar apos ter carregado o banco de dados na memoria.o problema é exatamente este, gostaria de exibir a barra carregando o DB, e n ele contando o DB depois de aberto.Ficou assim.1 - Button1, Ele faz o Query1.Open....2 - trava tudo, paralisa por (4seg)3 - depois de carregado que a GAUGE começa a contar!Sobre o BMP, acabei cedendo para este formato porque o banco access é muito limitado.No firebird, mysql funcionou bem com JPEG, já no access ele ate passa o JPEG mas quando esta dentro do banco ele converte para BMP.Mas, muito obrigado pela sua atenção, vou continuar procurando no mundaum da internet!um abraço! :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
jaumDoDelphi
Ola amigos do Script Brasil!
Estou desenvolvendo meu programa de cadastro de filmes a mais de 1 anos!
e toda hora acho uma ideia melhor e outra não, para implementar este programinha.
Agora estou com problemas para adaptar o uso do TProgressBar ao me programa.
1 - Como utilizei BMP para o banco access BLOB - no tamanho de 190x260 = 145kb
2 - hj com mais de 260 filmes cadastrados o banco já tem 37MB
3 - quando inicio ele no pendrive demora uns 4 segundos para abrir o banco
4 - dai já pensando no futuro por exemplo 500filmes vai dar uns 70MB do DB
5 - percebi que demora quando ele vai Abrir a QueryMovies que estao cadastradas os filmes e posters
quando eu execulto o comando ADOQMovies.Active := true; que demora os 4seg.
Gostaria de saber se é possível mostrar o progresso do carregamento do banco ACCESS com TADOConnection, TADOQuery?
desde já agradeço! ;)
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.