TProgressBar property out of range. O que é isso?
04/03/2008
0
pb.Max := mTexto.Count - 1;
No debug o erro da nessa linha.
O erro
--------------------------- Debugger Exception Notification --------------------------- Project MATERIAIS.exe raised exception class EInvalidOperation with message ´TProgressBar property out of range´. Process stopped. Use Step or Run to continue. --------------------------- OK Help ---------------------------
O que é isso?
Jpauloss
Posts
04/03/2008
Jpauloss
Vou postar aqui parte do código
procedure TfrmImportar.Button1Click(Sender: TObject); var fArq: TextFile; //Variável do Tipo Arquivo de Texto Caminho: string; //Variável que armazenará o caminho Linha: string; //Variavel que vai armazinar cada linha mTexto: TStringList; //Utilizada para contar as linhas a importar i: integer; //variavel utilizada no contador de linhas Importadas begin Caminho := edtArq.Text; //Varivel vai receber os dados do edit AssignFile(fArq, Caminho); ReSet(fArq); mTexto := TStringList.Create; try mTexto.LoadFromFile(Caminho); pb.Max := mTexto.Count - 1;
05/03/2008
Edilcimar
30/03/2017
Roberto Novakosky
pb.Max := mTexto.Count - 1
o correto é
pb.Max := mTexto.Count
Digamos que vc tenha 1000 linhas, se vc deixar o ProgressBar com no máximo 9999, quando vc tentar setar o valor 10000 dará um erro.
Nota: Se o teu windows estiver com o common controls anterior à versão 4.70, o max pode ir até (2^16)-1 = 65535, em versões depois disso o max pode assumir 2^32-1 = 4.294.967.295. É melhor não estourar estes valores.
Se vc precisar de max muito grande, o melhor é vc fazer um cálculo percentual, por exemplo, setar max em 1000, e setar a position proporcionalmente a 1000, assim vc nunca estoura 1000. O valor 1000 acredito que visualmente possui uma ótima resolução para o usuário final.
Roberto Novakosky
30/03/2017
Roberto Novakosky
pb.Max := mTexto.Count - 1
o correto é
pb.Max := mTexto.Count
Digamos que vc tenha *10.000* linhas, se vc deixar o ProgressBar com no máximo 9999, quando vc tentar setar o valor 10000 dará um erro.
Nota: Se o teu windows estiver com o common controls anterior à versão 4.70, o max pode ir até (2^16)-1 = 65535, em versões depois disso o max pode assumir 2^32-1 = 4.294.967.295. É melhor não estourar estes valores.
Se vc precisar de max muito grande, o melhor é vc fazer um cálculo percentual, por exemplo, setar max em 1000, e setar a position proporcionalmente a 1000, assim vc nunca estoura 1000. O valor 1000 acredito que visualmente possui uma ótima resolução para o usuário final.
Roberto Novakosky
Clique aqui para fazer login e interagir na Comunidade :)