GARANTIR DESCONTO

Fórum Grafico de desempenho com TCHART #357717

28/04/2008

0

Bom dia pessoal!!

Estou tentando criar um gráfico de desempenho igual ao que existe no windows quando vc pressionar crtl+shift+esc -> aba desempenho, porem estou encontrando dificuldades, pois toda vez que adiciono um valor ao gráfico ele continua o seu inicio em zero. Queria fazer com q cada valor que adiciona-se ao gráfico, a linha acompanha-se a grade que esta ao fundo(como é no histórico do uso de CPU do windows). caso contrario as linhas ficam se acumulando ate não dar pra ver + nada.

Alguém já usou o TChart para isso? Ou se alguém tiver uma Idea melhor fico grato.

Abraços !


Nango Xus

Nango Xus

Responder

Posts

28/04/2008

Rodc

no C++Builder 6.0 (e creito que apartir do Delphi 7.0) tem um componente na palheta Samples chamado PerformanceGraph que faz exatamente o que você está querendo fazer...

Mas usando TChart também é possível. No evento OnAfterAdd da Serie (selecione através do ObjectInspector) coloque o código abaixo:
Sender.GetHorizAxis.Automatic := false;       // <-- we dont want automatic scaling
Sender.GetHorizAxis.AutomaticMaximum  := false;       // <-- we dont want automatic scaling
Sender.GetHorizAxis.AutomaticMinimum := false;       // <-- we dont want automatic scaling

Sender.GetHorizAxis.Minimum := 0;
Sender.GetHorizAxis.Maximum := Sender.XValues.MaxValue + StrToTime(´00:00:02´);  // Começa um pouco antes do fim
Sender.GetHorizAxis.Minimum := Sender.GetHorizAxis.Maximum - StrToTime(´00:00:30´);  // Mostra os últimos 30 segundos



Responder

Gostei + 0

28/04/2008

Nango Xus

Rodc,

Não achei o componente PerformanceGraph no meu delphi 2006, acredito que seja somente do C++. Entretanto o codigo que vc me passou funciona perfeitamente!!!!

Muito obrigado Rodc! :lol: :lol: :lol:


Responder

Gostei + 0

28/04/2008

Rodc

[quote:1026df39ac=´Nango xus´]Não achei o componente PerformanceGraph no meu delphi 2006, acredito que seja somente do C++.[/quote:1026df39ac]
É verdade, olhei o código fonte do componente e está em C++.


Responder

Gostei + 0

28/04/2008

Nango Xus

É verdade, olhei o código fonte do componente e está em C++.


Sim é mesmo, encontrei o componente na paleta samples do C++. A pergunta pode ser estranha, mas é possivel usar um componente do C++ no Delphi Win32?? Tipo recriar o compontente para VCL do Delphi. :idea:


Responder

Gostei + 0

28/04/2008

Rodc

Usar um componente do Delphi no C++ é possível. O inverso não sei...
Mas tenta ir em Component e escolha a opção ´Install Component´, depois veja se o Delphi dá alguma opção de selecionar arquivos .CPP ou .H.


Responder

Gostei + 0

28/04/2008

Nango Xus

Essa ae já tentei mas não da :cry: Ele so importa dll, ocx, dlb e tlb...
Mas toda informação é valida.

Olha so, de onde vc tirou esse codigo que me passou? precisava ver mais alguns exemplos, pois com esse codigo minha barra de monitoramento fica uma reta, ela não muda suavemente apenas fica uma reta. Já tentei alterar os tempos mas não infuenciou muito...

Abraços


Responder

Gostei + 0

28/04/2008

Rodc

O código eu tirei do programa de exemplos do TChart. Procura lá na pasta de exemplos do Delphi a pasta TeeChart.


Responder

Gostei + 0

28/04/2008

Nango Xus

PRONTO!!!!!!!! :D
Tah na mão, agora a linha ficou ok!!

Segue código aos interessados:

Sender.GetHorizAxis.Automatic := False; // <-- we dont want automatic scaling

Sender.GetHorizAxis.Minimum := Sender.XValues.MaxValue - 100;

Sender.GetHorizAxis.Maximum := Sender.XValues.MaxValue + StrToTime(´00:00:03´); // Começa um pouco antes do fim

Vlw rodc!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar