fclientdemo.pas

来自「Delphi开发webservice的一套例子」· PAS 代码 · 共 78 行

PAS
78
字号
unit fClientDemo;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ComCtrls, Rio, SoapHTTPClient, JPEG,
  EncdDecd;

type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    Button1: TButton;
    Image1: TImage;
    Memo1: TMemo;
    HTTPRIO1: THTTPRIO;
    TabSheet3: TTabSheet;
    Image2: TImage;
    Button2: TButton;
    HTTPRIO2: THTTPRIO;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses uBitmapProviderIntf;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  sBitmapContent : String;
  ams : TMemoryStream;
  ass : TStringStream;
begin
  sBitmapContent := (HTTPRIO1 as IBitmapProvider).GetBitmap('Gordon2');
  ShowMessage(IntToStr(Length(sBitmapContent)));
//  Memo1.Lines.Text := sBitmapContent;

  ass := TStringStream.Create(DecodeString(sBitmapContent));
  ams := TMemoryStream.Create;
  try
    ams.LoadFromStream(ass);
    ams.SaveToFile(ExtractFilePath(Application.ExeName) + 'tt.jpg');
    Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName) + 'tt.jpg');
  finally
    ass.Free;
    ams.Free;
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  sBitmapContent : String;
  ams : TMemoryStream;
  ass : TStringStream;
  aFP : IBitmapProvider;
begin
  aFP := HTTPRIO1 as IBitmapProvider;
  try
    aFP.get
  finally
  end;

end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?