The TTMSFNCWXContainer is locked in the next page after clicking on an <a href="...">
-tag. See following sample.
Click the Button -> Click Me! appears -> but now if you click the button again -> you can´t reload the ElementContainer and stay on google.
is there an easy way to interrupt the href and open it in another Window...
Sample_WXContainer.zip (9.3 KB)
Pieter
(Pieter)
3
This is an example how to achieve this.
unit MainFormU;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.TMSFNCTypes, FMX.TMSFNCUtils, FMX.TMSFNCGraphics,
FMX.TMSFNCGraphicsTypes, FMX.Controls.Presentation, FMX.StdCtrls, FMX.TMSFNCCustomControl, FMX.TMSFNCWebBrowser,
FMX.TMSFNCCustomWEBControl, FMX.TMSFNCWXContainer;
type
TForm1 = class(TForm)
TMSFNCWXContainer1: TTMSFNCWXContainer;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
procedure DoNewWindowRequested(Sender: TObject; var Params: TTMSFNCWebBrowserNewWindowRequestedParams);
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
type
TTMSFNCWXContainerOpen = class(TTMSFNCWXContainer);
procedure TForm1.Button1Click(Sender: TObject);
begin
TMSFNCWXContainer1.ElementContainers[0].HTML.Text := '<a href="https://www.google.com/" target="_blank">Click Me!</a>';
end;
procedure TForm1.DoNewWindowRequested(Sender: TObject;
var Params: TTMSFNCWebBrowserNewWindowRequestedParams);
begin
Params.Handled := True;
TTMSFNCUtils.OpenURL(Params.URL);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
TTMSFNCWXContainerOpen(TMSFNCWXContainer1).OnNewWindowRequested := DoNewWindowRequested;
end;
end.
system
(system)
Closed
4
This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.