我有2个应用程序让我们称之为服务器和客户端。如何使用App Tethering从服务器获取图像
我正在使用Delphi-xe8。应用程序 - >多设备应用程序
在两面使用:应用程序绑定[tManager,tAProfile],SQLite数据库。
在服务器SQLite数据库我有6个图像。我想在客户端查看该图像。
在客户端我有6 [TImage]。
当我点击按钮'获取图像列表'我得到6个相同的看法。
我想6个图像来观看不同 - > [从服务器获取数据库]
客户 “获取图像列表” 按钮代码:
procedure TForm1.GetImgLstClick(Sender: TObject);
begin
tAProfile.SendString(tManager.RemoteProfiles.First,'GetImages','');
end;
服务器接收代码:
procedure TForm2.tAProfileResourceReceived(const Sender: TObject;
const AResource: TRemoteResource);
var
MS1:TMemorystream;
begin
if AResource.Hint='GetImages' then
begin
MS1:=TMemorystream.Create;
rQuery.Close;
rQuery.SQL.Clear;
rQuery.SQL.Add('select image from users');
rQuery.Open;
while not rQuery.Eof do
begin
tblobField(rQuery.FieldByName('image')).SaveToStream(MS1);
Image1.Bitmap:=nil;
rQuery.Next;
end;
tAProfile.SendStream(tManager.RemoteProfiles.First,'SendImages',MS1);
end;
end;
客户端收到代码:
procedure TForm1.tAProfileResourceReceived(const Sender: TObject;
const AResource: TRemoteResource);
var
MS:TMemoryStream;
begin
if AResource.Hint='SendImages' then
begin
Image1.Bitmap.LoadFromStream(AResource.Value.AsStream);
Image2.Bitmap.LoadFromStream(AResource.Value.AsStream);
Image3.Bitmap.LoadFromStream(AResource.Value.AsStream);
Image4.Bitmap.LoadFromStream(AResource.Value.AsStream);
Image5.Bitmap.LoadFromStream(AResource.Value.AsStream);
Image6.Bitmap.LoadFromStream(AResource.Value.AsStream);
end;
end;
我正在使用Delphi-xe8。应用程序 - >多设备应用程序 –
截图与这个和你昨天的问题无关,它们提出了同样的问题。您在服务器应用程序中使用了哪种数据集类型? – MartynA
@TomBrunberg:我已经在昨天的回答中向他展示了OP如何做到这一点:http://stackoverflow.com/questions/42140246/delphi-how-to-get-all-images-from-server -database逐使用-APP-栓系/ 42144117#42144117。他似乎缺少的一步是如何将他的Sqlite数据库中的数据导入到ClientDataSet中,我将稍后解释。 – MartynA