Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida Variável...


ZueRa

Pergunta

13 respostass a esta questão

Posts Recomendados

  • 0

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type

TForm1 = class(TForm)

private

{ Private declarations }

public

{ Public declarations }

x:boolean;

end;

var

Form1: TForm1;

implementation

Nem deu certo...

Veja o erro:

[Error] google_api.pas(40): '=' expected but identifier 'x' found

Link para o comentário
Compartilhar em outros sites

  • 0

opa

cole o que você fez na sua unit, pois se o erro é

[Error] google_api.pas(40): '=' expected but identifier 'x' found

quer dizer que o erro é na linha 40, e passando como base o que você deixou em quote e deixou em vermelho, não está nem na linha 20, resumindo não há como identificar o erro sendo que a fonte do erro não é a mesma...

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Bom, aí está o code:

unit google_api;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, BuscaComThread, GoogleSearch,InvokeRegistry, Rio,
  SOAPHTTPClient, Buttons, Menus, Gauges, ComCtrls, Shellapi, UrlMon;

type
  TForm1 = class(TForm)
    btnPesquisa: TButton;
    edPesquisa: TEdit;
    mmPesquisa: TMemo;
    labPesquisa: TLabel;
    Edapi: TEdit;
    Label1: TLabel;
    MainMenu1: TMainMenu;
    Menu1: TMenuItem;
    Sair1: TMenuItem;
    Ferramentas1: TMenuItem;
    About1: TMenuItem;
    Formatar1: TMenuItem;
    Edstop: TButton;
    Label2: TLabel;
    Ltotal: TLabel;
    Label3: TLabel;
    procedure btnPesquisaClick(Sender: TObject);
    procedure Sair1Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure mmPesquisaChange(Sender: TObject);
    procedure edPesquisaKeyPress(Sender: TObject; var Key: Char);
    procedure EdapiKeyPress(Sender: TObject; var Key: Char);
    procedure Label3Click(Sender: TObject);
    private
    procedure TrataResultadoSearch(resultado:GoogleSearchResult);
  end;
    public
    x:boolean;
  end;

var
  Form1: TForm1;

implementation

espero que ajude ;)

Porque na verdade, estou tentando arrumar um jeito, de parar o processo do "SOAPHTTPClient" ou o famoso "HTTPRIO", que fica na aba "WEBSERVERS".

Talvez se alguém souber, pode acabar com essa confusão...

Grato.

Link para o comentário
Compartilhar em outros sites

  • 0

Fiz uma pergunta a um amigo no IRC sobre isso, e ele me disse:

[14:02:55] <Terror_br> como posso fazer para parar o SOAP (RIO) do google api ?

[14:02:56] <Terror_br> tipow.. criei um botão STOP, mas não consigo botar ele pra funcionar

[14:02:56] <Terror_br> <poerschke> brack

[14:02:56] <Terror_br> <poerschke> :)

[14:02:56] <Terror_br> <poerschke> if x then break;

[14:02:56] <Terror_br> <poerschke> declara X como boolean publica

mas esse processo que ele disse if x then break não deu certo...

nem executa para falar a verdade...

olha o erro:

[Error] google_api.pas(105): BREAK or CONTINUE outside of loop

[Fatal Error] google_api.pas(7): Could not compile used unit 'google_api'

=/

Tá tenso... help =(

Link para o comentário
Compartilhar em outros sites

  • 0

opa

então, o erro é que você está dando break (stop, brecando) um nada

eheh não tem código ai, então esse break não tem nenhum tipo de

ligação...

o break que o rapaz do mirc disse, é no código onde é realizado a

busca, ou talvez outra coisa mas por ser googleapi deve ser busca...

então você faria

procedure TForm1.EdstopClick(Sender: TObject);

begin

x := True;

end;

e no código onde é realizada a busca, ou qualquer coisa que você

queira parar, você faz

if x then Exit;

se for um loop, então você pode usar break;

if x then Break;

lembrando que no código onde se inicia a busca, você deve setar o

x := false;

Pelo que estou vendo, você tem pouco conhecimento em delphi não é?...

se não for díficil pra voce, coloca esse código em algum site de

hospedagem de arquivo (rapidshare por exemplo), e peça ajuda, porque

se cada parte que você quiser ajuda você não passar toda a parte necessária,

então você teria que entender o que se passa na programação para poder

resolver sozinho...

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Churc, aqui que é realizada a busca:

procedure TBuscaComThread.Execute;
var
x:integer;
key:string;
begin
key:=google_api.Form1.Edapi.Text;
for x:=0 to 70 do
begin
  try
    CoInitialize(nil);
    case FTipoBusca of
      tbWeb:  FResultadoWeb:=GetGoogleSearchPort.doGoogleSearch(key,FTexto,10*x,10,false,'',false,'','','');
    end;
    Synchronize(DoResultado);

  finally
    CoUninitialize;
  end;
end;
end;
uhm, eu entendi sua explicação, acho que é isso mesmo que ele quiz dizer... mas onde eu poderia colocar o if x then break ? Grato. Churc, consegui... fiz assim:
procedure TBuscaComThread.Execute;
var
x:integer;
key:string;
begin
key:=google_api.Form1.Edapi.Text;
for x:=0 to 70 do
begin
if google_api.Form1.x then exit;
  try
    CoInitialize(nil);
    case FTipoBusca of
      tbWeb:  FResultadoWeb:=GetGoogleSearchPort.doGoogleSearch(key,FTexto,10*x,10,false,'',false,'','','');
    end;
    Synchronize(DoResultado);

  finally
    CoUninitialize;
  end;
end;
end;

hehe =)

Obrigado aí pela ajuda !

Porém.. agora estou com outra dúvida... como poderei fazer para ter um status da busca...

por exemplo..

"buscando"

"busca terminada" etc...

Tens alguma idéia ?

Link para o comentário
Compartilhar em outros sites

  • 0

opa

pra fazer status, vou dar um exemplo simples depois você aperfeiçoa, de outras maneiras como uma statusbar por exemplo...

coloque um label no form onde tem os Edit de busca...

coloque em qualquer lugar, visível só pra voce ver como vai funcionar...

vamos supor que esse label se chama-se label1

procedure ShowStatus(const szStatus: String);

begin

with google_api.Form1.Label1 do

begin

Caption := szStatus;

Refresh;

Sleep(300); //só pra não ficar piscando os status... que é rápido

end;

end;

procedure TBuscaComThread.Execute;

var

x:integer;

key:string;

begin

key:=google_api.Form1.Edapi.Text;

google_api.x := False;

ShowStatus('Iniciando a busca...');

for x:=0 to 70 do

begin

if google_api.Form1.x then exit;

ShowStatus('Fazendo busca ' + InttoStr(x) + ' de 70');

try

CoInitialize(nil);

case FTipoBusca of

tbWeb: FResultadoWeb:=GetGoogleSearchPort.doGoogleSearch(key,FTexto,10*x,10,false,'',false,'','','');

end;

Synchronize(DoResultado);

finally

CoUninitialize;

end;

end;

end;

Tipo, seu código está meio bagunçado mas está valendo...tipo esse x ai estar declarado no form, o coinitialize sendo chamado x vezes conforme o loop, e tal... mas beleza

abraços

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...