free pascal:fpwebview 组件简单易用

从 https://github.com/PierceNg/fpwebview 下载 fpwebview-master.zip 简单易用。

先请看 \fpwebview-master\README.md

cd \lazarus\projects\fpwebview-master\demo\browser_cli

修改 winbuild.bat 如下

@echo off

echo Set up FPC executable path.
set fpcexe=D:\lazarus\fpc\3.2.2\bin\x86_64-win64\fpc.exe
其它不改变

修改 browser_cli.lpr  如下,增加了命令行参数。

program browser_cli;

{$mode objfpc}{$H+}
{$linklib libwebview}

uses
  {$ifdef unix}cthreads,{$endif}
  Classes,Process,SysUtils,StrUtils,
  math,
  webview;

var
  w: PWebView;
  url: String;

begin
  if Assigned(InitProc) then
    TProcedure(InitProc);

  { Set math masks. libwebview throws at least one of these from somewhere deep inside. }
  SetExceptionMask([exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision]);

  url := 'http://localhost/';
  if ParamCount =1 then
  begin
    if Length(ParamStr(1))<6 then
      url:= 'http://localhost:' + ParamStr(1)
    else
    begin
      if AnsiStartsStr('http', ParamStr(1)) then url:= ParamStr(1)
      else if AnsiStartsStr('192.', ParamStr(1)) then url:= 'http://' + ParamStr(1)
      else url:= 'https://' + ParamStr(1);
    end;
  end
  else
    url := ParamStr(1);

  writeln(url);
  w := webview_create(WebView_DevTools, nil);
  webview_set_size(w, 1024, 768, WebView_Hint_None);
  webview_set_title(w, PAnsiChar('WebView Free Pascal'));
  webview_navigate(w, PAnsiChar(url));
  webview_run(w);
  webview_destroy(w);
  writeln('Goodbye, webview.');
end.

参考:AnsiStartsStr

注意:pascal 关键字 else 前面的语句一定不能带有分号,否则会产生编译错误。

编译运行 winbuild.bat

修改 winrun.bat  如下

@echo off
@echo browser_cli.exe 
browser_cli.exe  %1

运行 winrun.bat  www.baidu.com  

运行 winrun.bat 8888

默认访问 http://localhost:8888

运行 winrun.bat 192.168.1.101:8080

访问 http://192.168.1.101:8080

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值