notification about online

type
Tinformation=record
name:string;
count:integer;
sourse:TStringList;
id:string;
end;
type
Tstart=class(TThread)
private
procedure syncr;
protected
procedure execute;override;
end;
var
Form5: TForm5;
js1,js2:TJSONObject;
arr:TJSONArray;
inf:Tinformation;
implementation

{$R *.fmx}

procedure TForm5.btn1Click(Sender: TObject);
var st:Tstart;
begin
st:=Tstart.Create(false);
st.FreeOnTerminate:=true;
st.Priority:=tpNormal;
end;

procedure TForm5.mmo1Click(Sender: TObject);
begin

end;

{ Tstart }

procedure Tstart.execute;
var send:THTTPSend;

i: Integer;
begin
inherited;
send:=THTTPSend.Create;
inf.sourse:=TStringList.Create;
inf.count:=form5.mmo1.Lines.Count-1;
if inf.count>=0 then
for i := 0 to inf.count do
begin
inf.id:=form5.mmo1.Lines[i];
send.HTTPMethod('GET','https://api.vk.com/method/users.get?user_ids='+inf.id+'&fields=online&name_case=nom&v=5.30');
inf.sourse.LoadFromStream(send.Document);
inf.sourse.Text:=UTF8Decode(inf.sourse.Text);
Synchronize(syncr);
inf.sourse.Clear;
send.Clear;
end;
end;

procedure Tstart.syncr;
begin
js1:=TJSONObject.ParseJSONValue(inf.sourse.Text)as TJSONObject;
if Assigned(js1) then
begin
arr:=js1.Get('response').JsonValue as TJSONArray;
js2:=arr.Get(0) as TJSONObject;
clipboard.AsText:=Format('%s',[js2.Get('first_name').JsonValue.Value])+' '+Format('%s',[js2.Get('last_name').JsonValue.Value]);
end;
end;

end.
Теги:
sourse, Tstart, begin , procedure, TJSONObject, count, Create, syncr, TForm5, JsonValue, Sender, TObject, Tinformation, type , then , Lines, form5, THTTPSend, TJSONArray, Clear, Value, Format, string, execute, TStringList, online, AsText, fields, method, LoadFromStream, users, clipboard, Assigned, first, ParseJSONValue
Добавлено: 03 Мая 2015 08:44:09 Добавил: Илья Добряк Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...