网站首页 工具软件 操作系统 办公软件 网页制作 PHP教程 script脚本专栏 photoshop教程 其他精品教程
我发布的文章 - 教程搜索 - 交流论坛 - 帮助中心 - 网站首页 网络工具 - 常用工具 - 媒体工具 - 系统工具 - 实用工具 NT/2003 - Win Xp - Win2000 - DOS/Win9x - IE/注册表 - Linux - 苹 果 Office - Word - Excel - PowerPoint - 输入法 - 邮件处理 Flash - Dreamweaver - Fireworks - FrontPage - HTMLCSS 基础文章 - PHP函数 - PHP技巧 - 数据库相关 - 高级应用 - PHP安装 - 转载精华 - 常见问题 综 合 类 - 状 态 栏 - 游 戏 类 - 页面背景 - 页面特效 - 页面导航 - 文本操作 - 文本特效 - 图形特效 - 鼠标特效 - 时间日期 - 密 码 类 文字特效 - 按钮与图标 - 色彩运用 - 滤镜魔法 - 综合实例 XML教程 - DELPHI基础教程 - VB教程
首页 -> 其他精品教程 -> DELPHI基础教程

TOP

用Delphi控制IE窗口
文章内容
相关信息
用户评论
文章内容


本程序用于打开IE、链接到指定的网页、获取IE地址栏中的URL地址信息及该窗口名称、激活最近打开的窗口以及关闭最近打开的窗口。程序的界面如图1:

设计思想


使用Delphi编程控制IE的方法有多种,在本程序中使用DDE来控制IE,应注意须先确保IE已经运行,因为此时IE要作为DDE服务器,用户的程序只能作DDE客户端,而DDE客户端无法与一个没有运行的服务器进行数据交换。在本程序中调用API函数ShellExecute来打开IE。



图1


在本程序中使用DDE客户端时用到了类TDdeClientConv的以下几个函数及过程:

function SetLink(Service:String;Topic:String):Boolean;
function OpenLink:Boolean;
function RequestData(const Item:String):Pchar;
procedure CloseLink;


其中,参数Service为DDE服务器的ApplicationName,对IE来说就是Iexplore;参数Topic是DDE会话的TopicName,不同功能对应的Topic不同;参数Item为会话的ItemName,也因功能不同而不同。函数SetLink用来设置会话主题,若成功返回True,否则返回False;函数RequestData用来返回会话的数据。

设计步骤


新建一个应用程序,为窗体加入两个Edit组件、6个Button组件。各组件属性如图2:



图2


在uses中加入对DDEman,ShellAPE和ComObj单元的引用,并定义一个TDdeClientConv类型的全局变量DDE。

编写相关代码


 ...... 
  var DDE:TDdeClientConv;
  //DDE为客户端全局变量
  implementation
  {$R *.DFM}
  //创建窗体时创建DDE客户端
  procedure TForm1.FormCreate(Sender: TObject);
  begin
  DDE:=TDdeClientConv.Create(Self);
  end;
  //单击Open IE启动默认浏览器并自动打开指定的网页(若IE不是默认浏览器,需手工打开)
  procedure TForm1.Button3Click(Sender: TObject);
  begin
  //调用ShellExecute打开默认浏览器,将窗口模式设为SW_SHOWNORMAL
  ShellExecute(Handle,nil,PChar('http://www.chinaren.com/index.shtml'),
nil,nil,SW_SHOWNORMAL);
  end;
  //单击Get URL按钮获取IE地址栏URL以及对应窗口标题
  procedure TForm1.Button1Click(Sender: TObject);
  begin
  //设置会话连接成功
  if DDE.SetLink('Iexplore', 'WWW_GetWindowInfo') then
  begin
  DDE.OpenLink;
  //返回信息并在组件Edit1中显示
  Edit1.Text:=DDE.QequestData('-1');
  DDE.CloseLink;
  end
  else
  ShowMessage('IE没在运行');
  end;
  //单击Open URL按钮链接到指定网页
  procedure TForm1.Button2Click(Sender: TObject);
  begin
  if DDE.SetLink('Iexplore', 'WWW_
  OpenURL') then
  begin
  //链接到指定Web页
  DDE.OpenLink;
  DDE.RequestData(Edit2.Text);
  DDE.CloseLink;
  end
  else
  ShowMessage('IE没在运行');
  end;
  //单击Activate IE按钮激活最近打开的IE窗口
  procedure TForm1.Button4Click(Sender: TObject);
  begin
  if DDE.SetLink('Iexplore', 'WWW_Activate') then
  begin
  DDE.OpenLink;
  DDE.RequestData('-1');
  DDE.CloseLink;
  end
  else
  ShowMessage('IE没有运行');
  end;
  //单击Close IE按钮关闭最近打开的IE窗口
  procedure TForm1.Button5Click(Sender: TObject);
  begin
  if DDE.SetLink('Iexplore', 'WWW_Exit') then
  begin
  DDE.OpenLink;
  DDE.RequestData('WWW_Exit');
  DDE.CloseLink;
  end
  else
  ShowMessage('IE没有运行');
  end.




相关信息
用Delphi控制IE窗口
发布者:mmcbbs
浏览量:181
发布日期:2005-04-10 11:06:18
所属专题:
用户评论
称  呼:
内  容:

广告位

广告招租,欢迎抢订

热门信息

·Delphi客户服务器应用开发..
·SQL编程(一)
·数据浏览部件的应用及编程..
·数据浏览部件的应用及编程..
·SQL编程(二)
·数据访问部件的应用及编程..
·在线播放器DIY
·Delphi客户服务器应用开发..

推荐信息