DELPHI XE5 源码PASCAL:http://files.cnblogs.com/xe2011/FireMonkey_Webbrowser.rar

为了这个用上webbrowser真是费太大劲了

要让窗体2位置和窗体1的PANEL坐标一致

窗体样式要为none 
Web坐标才会正确

但是fire monkey没有webbrowser控件 这个费了好长时间搞成这样了

现在还有个问题没有处理

 
 unit Unit1;

 interface

 uses
Windows, Messages, FMX.Platform.Win,
System.SysUtils, System.Types, System.UITypes, System.Classes,
System.Variants,
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
FMX.Layouts, FMX.Memo; type
TForm1 = class(TForm)
Button1: TButton;
Panel1: TPanel;
Button3: TButton;
Memo1: TMemo;
Timer1: TTimer;
Button4: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject); procedure FormShow(Sender: TObject);
procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Single);
procedure Button3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Single);
procedure Timer1Timer(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
procedure Form2RePosition;
public end; var
Form1: TForm1; implementation {$R *.fmx} uses
UnitX; var
Form2: TForm2; procedure TForm1.FormCreate(Sender: TObject);
begin
Form2 := TForm2.Create(nil);
Form2.WebBrowser1.Navigate('http://w2i.wanmei.com/launcher/index.htm');
Form2.AutoSize := true;
Form2.Show;
end; procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Single);
begin
Form2RePosition; end; procedure TForm1.FormShow(Sender: TObject);
begin
Form2.Width := Round(Panel1.Width);
Form2.Height := Round(Panel1.Height);
Form2RePosition;
end; procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form2RePosition;
end; procedure TForm1.Button2Click(Sender: TObject);
begin
Form2.Visible := not Form2.Visible; end; procedure TForm1.Button3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Single);
begin
ReleaseCapture();
SendMessage(FmxHandleToHwnd(Handle), WM_SYSCOMMAND, SC_MOVE + HTCAPTION, );
end; procedure TForm1.Button4Click(Sender: TObject);
begin
WindowState := TWindowState.wsMinimized;
end; procedure TForm1.Form2RePosition;
begin
if WindowState = TWindowState.wsNormal then
begin
Form2.Left := Round(Form1.Left + Panel1.Position.X);
Form2.Top := Round(Form1.Top + Panel1.Position.Y);
SetWindowPos(Form2.Handle, HWND_TOP, , , , , SWP_NOSIZE + SWP_NOMOVE + SWP_SHOWWINDOW);
end
else
Form2.Visible := false;
Form2.Visible:= (WindowState = TWindowState.wsNormal);
end; procedure TForm1.Button1Click(Sender: TObject);
begin
close;
end; end.

FMX unit1

 unit UnitX;

 interface

 uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.OleCtrls, SHDocVw, Vcl.Imaging.jpeg,
Vcl.ExtCtrls; type
TForm2 = class(TForm)
WebBrowser1: TWebBrowser;
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form2: TForm2; implementation {$R *.dfm} procedure TForm2.FormCreate(Sender: TObject);
begin
Width:=;
Height:=;
end; procedure TForm2.FormShow(Sender: TObject);
begin
ShowWindow(Application.handle, SW_HIDE);
SetWindowLong(Self.handle, GWL_EXSTYLE, GetWindowLong(Self.handle,
GWL_EXSTYLE) ); // 不在alt+tab中出现
end; end.

VCL unit

FireMonkey 使用Webbrowser的更多相关文章

  1. Delphi for iOS开发指南(7):在iOS应用程序中使用WebBrowser组件

    Delphi for iOS开发指南(7):在iOS应用程序中使用WebBrowser组件 在FireMonkey iOS应用程序中使用WebBrowser 在iOS平台上,FireMonkey使用T ...

  2. [修正] Firemonkey TFrame 存档后,下次载入某些事件连结会消失(但源码还在)

    问题:Firemonkey TFrame 存档后,下次载入某些事件连结会消失(但源码还在) 解决:(暂时方法) type TTestFrame = class(TFrame) public const ...

  3. c#如何判断webbrowser已经加载完毕

    最近有个小程序需要采集网页源代码,但有的网页中JS脚本又会生成额外的代码,比如http://www.cnblogs.com/lidabo/p/4169396.html 红框部分便是另外加载的代码. 此 ...

  4. 【手记】WebBrowser响应页面中的blank开新窗口及window.close关闭本窗体

    注:本文适用.net 2.0+的winform项目 目的: 点击页面中的target="_blank"链接时,弹出新窗体 页面中有window.close()操作时,关闭窗体 上述 ...

  5. [示例] Firemonkey OnTouch 多点触控应用

    说明:Firemonkey OnTouch 多点触控应用,可同时多指移动多个不同控件 原码下载:[原创]TestMultitouchMove_多点触控应用_by_Aone.zip 运行展示:

  6. [函数] Firemonkey Windows 重新计算 Font Baseline

    计算字型 Baseline 是一个不常用的函数,但如果想要显示不同大小文字下方对齐,就得用它来计算字型的 Baseline 才行,如果计算不准,显示的文字就会高高低低不整齐. 在 Firemonkey ...

  7. WPF 开发 WebBrowser

    WebBrowser WebBrowser 报错如何屏蔽 CEF(Chromium Embedded Framework)       参考 WPF, Chrome Embedded and WebA ...

  8. C# Webbrowser 常用方法及多线程调用

    设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagNa ...

  9. C#中的WebBrowser控件的使用

    0.常用方法   Navigate(string urlString):浏览urlString表示的网址 Navigate(System.Uri url):浏览url表示的网址 Navigate(st ...

随机推荐

  1. 独立两套DJANGO+CELERY配置(生产+测试)时要注意的一些细节

    1,生产的NGINX环境,要指定自己的目录,而不是PROJ默认的. upstream ism_host { server ; } server { listen ; server_name local ...

  2. 李洪强iOS开发之-环信03_集成 SDK 基础功能

    李洪强iOS开发之-环信03_集成 SDK 基础功能 集成 SDK 基础功能 在您阅读此文档时,我们假定您已经具备了基础的 iOS 应用开发经验,并能够理解相关基础概念. SDK 同步/异步方法区分 ...

  3. solr的原子更新/局部更新

    solr支持三种类型的原子更新: set - to set a field. add - to add to a multi-valued field. inc - to increment a fi ...

  4. Form.KeyPreview 属性2

    在使用.Net Framework编写窗体应用程序的时候,有时有需要响应窗体的按键消息. 当窗体上没有任何其他控件的时候,窗体是可以直接响应这些消息的. 但是当窗体上有其他控件时,会发现窗体再也不会响 ...

  5. tlplayer,wzplayer支持wince,winphone,windows8 for arm

    tlplayer,wzplayer宣布支持wince,winphone,windows8 for arm,支持http,hls,rtmp,rtsp,mms等媒体流协议. 支持加密视频播放. 目前tlp ...

  6. IPAddress

    Console.WriteLine("BitConverter.IsLittleEndian = {0}", BitConverter.IsLittleEndian); Conso ...

  7. windows安装PHP5.4.8+Apache2.4.3+Mysql5.5.28

    最近听说PHP5.4速度很快,所以想建立一个本地环境测试下.我打算用本地windows xp sp3下安装PHP5.4.8.Apache2.4.3和Mysql5.5.28. 首先去下载PHP.Apac ...

  8. jQuery与XML

    jQuery与XML 快而强的遍历系统,华丽丽的选择器语法,这或许是jQuery 那么流行的原因.当然它还有详尽的文档.它主要是用来处理HTML的,但在这里妳会看到如何应用到XML. 使用jQuery ...

  9. Shape 与 InlineShape 的区别

    Shape 对象代表文档中的图形对象,InlineShape 代表文档中的嵌入式图形对象.所谓嵌入式图形对象,是指将图像作为文字处理,在排版上以文字的方式进行排版. Shape 与 InlineSha ...

  10. 在内部架设NuGet服务器

    在公司内部有很多基础框架或者基础组件,甚至对于使用SOA架构的公司来说,会有大量的业务组件的契约程序集,对于这些框架或组件的引用管理有的人使用源代码管理工具,但是NuGet相比源代码管理工具更方便: ...