Pesquisar este blog

segunda-feira, 22 de março de 2010

Gerar gráfico com Delphi usando API do Google

Para quem ainda acha que Delphi não interage com a web, aqui está um exemplo simples de aproveitar os recursos da grande rede para gerar um gráfico. O Google nos fornece várias excelentes APIs e uma delas é a Google Chart Tools que refere-se a gráficos de diversos tipos.
O exemplo que disponibilizo é bem simples, porém suficiente para o aprendizado e consequentemente o desejo de aprender mais.


Para o exemplo é necessário o componente TWebBrowser que vem com o Delphi desde a versão 6.

O código a seguir está no evento onClick do botão:

Var Html : TStringList;
Valores, Legenda, Grafico  : String;
Begin
   Html := TStringList.Create;
   Html.Add( '<html><body>' );
   Html.Add( '
' ); Valores := Edit1.Text + ',' + Edit2.Text + ',' + Edit3.Text + ',' + Edit4.Text + Edit5.Text + Edit6.Text + ',' + Edit7.Text + ',' + Edit8.Text + ',' + Edit9.Text + ',' + Edit10.Text; Legenda := 'Valor 1|Valor 2|Valor 3|Valor 4|Valor 5|' + 'Valor 6|Valor 7|Valor 8|Valor 9|Valor 10'; Grafico := 'http://chart.apis.google.com/chart?chs=300x100&chd=t:' + Valores + '&cht=p3&chl=' + Legenda + '"'; Html.Add( '<iframe frameborder="0" width="350" height="150" src="' ); Html.Add( Grafico ); Html.Add( '</iframe>' ); Html.Add( '
' ); Html.Add( '</body>' ); Html.Add( '</html>' ); Html.SaveToFile( 'c:\temp.html' ); WebBrowser1.Navigate( 'c:\temp.html' ); End;

Espero que esse exemplo possa ser  o começo para aprofundar o estudo das APIs do Google, pois há muito material e o bom de tudo isso que é free.

Para saber mais sobre as APIs, visite o endereço http://code.google.com/intl/pt-BR/

3 comentários:

  1. LÁ ESTOU USANDO DELPHI 7
    NA ULTIMA LINHA ESTA A DAR ERRO


    WebBrowser1.Navigate( Url )

    vc poderia me ajudar grato...

    ResponderExcluir
  2. Maria Gorete,

    Na verdade, faltou um ajuste na passagem do parâmetro do componente WebBrowser1.

    É só mudar para: WebBrowser1.Navigate( 'c:\temp.html' );

    Obrigado.

    ResponderExcluir
  3. Muito obrigado deu certinho muito interesante tem de estar on line ...bz

    ResponderExcluir

Todo comentário é bem-vindo, seja crítica ou elogio. O importante é sua manifestação. Só peço que se identifique para que posteriormente se for o caso eu entrar em contato.