Delphi中用网页打造程序界面

大家都知道,现在的网页想要多花哨就有多花哨,比起传统Windows应用程序界面单调的菜单加按钮,不知会醒目多少。而且网页素材十分丰富,制作起来也比较简单。如果你想做一个华丽无比,动感十足的程序界面,那Web界面就是你最佳的选择。

第一步:根据需要,用FrontPage或者Dreamweaver做一个界面,界面加上图片,还可加上漂亮的动态Flash。Web界面与程序事件联系在一起的地方就是“超链接”,我们以一个简单的播放器程序为例。

比如:要做一个播放器,有“播放”按钮和“停止”按钮,分别设置“播放”按钮的链接为“Play_”;“停止”按钮的超链接为“Stop_”。并保存这个网页文件为“WebFrm.htm”。

第二步:在Delphi中新建一个Project,设置Form1的长宽和刚才设计网页一样大小,在Form1上放置一个WebBrowser1控件,设置WebBrowser1的Align属性为alClient,我们是利用TWebBrowser来显示网页界面的。代码如下:

procedure TForm1.FormCrea
teSender TObject
begin
WebBrowser1.Navigate'D\播放器\WebFrm.htm'//把“D\播放器”换成你保存WebFrm.htm的目录
end

第三步:关键就在这步了。在响应Web界面上“播放”和“停止”的点击事件时,就要用到TWebBrowser的OnBeforeNavigate2事件,它的代码如下:

procedure TForm1.WebBrowser1BeforeNa
vigate2Sender TObject
const pDisp IDispatch var URL Flags TargetFrameName PostData
Headers OleVariant var Cancel WordB ool

在它的七个参数中,我们会用到URL和Cancel这两个参数,在本例中,当你点击“播放”按钮时,URL就会返回“D\播放器\WebFrm.htm\Play_”这行字符串当点击“停止”按钮时,URL则返回“D\播放器\WebFrm.htm\Stop_”这行字符串。Cancel这个参数的用途是:当点击“播放”按钮时,Web想要跳转到“D\播放器\WebFrm.htm\Play_”这个页面,但根本没这个页面,WebBrowser1就会出现我们上网经常看到的“该页无法显示”这个页面,这时把Cancel设为TrueWebBrowser1会断开链接,就不会出现以上情况了。

具体代码如下:

procedure TForm1.WebBrowser1BeforeNa
vigate2Sender TObject
const pDisp IDispatch var URL Flags TargetFrameName PostData
Headers OleVariant var Cancel WordB
ool
begin
if Pos'Play_' URL > 0 then begin //当返回的URL含有“Play_”,就执行播放的代码
ShowMessage'播放'//为简单起见,用来代替播放的代码。
Cancel = True
end
else
if Pos'Stop_' URL > 0 then begin
ShowMessage'停止'//为简单起见,用来代替播放的代码。
Cancel = True
end
end

(以上代码Delphi6+Win2000编译通过。)

时间: 2024-10-01 04:15:21

Delphi中用网页打造程序界面的相关文章

10个有用的网页应用程序界面技术

阅读本文英文版 (英文编辑:SmashingMagazine:翻译.校对:Lucas-Li) 近年来,越来越多的桌面应用程序移植到互联网上面的.没有了平台限制和安装要求且作为一种服务模式的软件看起来很吸引人的.网络应用程序界面设计的核心是网页设计:但是,它的焦点主要集中在功能上面.为了和桌面程序竞争,网络应用程序必须提供简单 ,直观的以及响应快速的用户界面,这样才能减少用户完成事情 的时间和精力. 过去我们没有用应有的方法来关注网络应用程序,现在该是仔细地研究一些有用的技术和设计方案,以便使网络

第十三章-Delphi开发数据库应用程序概述(二)(2)

13.3.3 数据库窗体专家和数据库操作台(DBD) Delphi为用户开发简单的数据库应用程序提供了一个开发工具叫做"数据库窗体专家"(Database Form Expert),在Delphi系统菜单Tool菜单下可以找到. 数据库窗体专家能够自动生成简单的数据库应用程序中所必须完成的许多任务,它还可以生成基于单个数据库表的应用程序窗体或基于主要──明细型多个数据库表的应用程序窗体,数据库窗体专家能够自动完成的任务如下: ● 放置数据库部件到窗体中(TDataSource部件) ●

软件开发-如何能将程序界面做的很好看?

问题描述 如何能将程序界面做的很好看? 就像360,QQ什么的一样的界面,用普通的GUI开发做出来的按钮都是丑丑的普通按钮,360,QQ他们是怎么做到的?可以把软件做得像HTML5做出来的网页一样的那种效果吗? 解决方案 参考http://blog.csdn.net/ljh081231/article/details/8668327http://code.ijinshan.com/source/source.html 解决方案二: 不知道你在做什么GUI程序,通常普通拖出来的控件都比较普通,但是

ZK v5.0.6发布 以AJAX/XUL/Java为基础的网页应用程序开发框架

ZK是一套以 AJAX/XUL/Java 为基础的网页应用程序开发框架,用于丰富网页应用程序的使用界面.最大的好处是,在设计AJAX网络应用程序时,轻松简便的操作就像设计桌面程序一样. ZK包含了一个以AJAX为基础.事件驱动(event-driven).高互动性的引擎,同时还提供了丰富多样.可重复使用的XUL与HTML组件,以及以 XML 为基础的使用介面设计语言 ZK User-interfaces Markup Language (ZUML). ZK 提供超过60个XUL组件及80个XHT

ASP.Net、C#实现网页小偷程序

asp.net|程序|网页|小偷程序 ASP.Net.C#实现网页小偷程序      在ASP中实现小偷是使用XMLHTTP对象,最近在学习.net时看到了WebClient类,于是将过去用来做小偷的程序改了一下,使用ASP.Net.C#来实现,程序写的比较简单,目的是为了起到抛砖引玉的作者,希望能与各位一起探讨,使之更加完善,下一步我将使之实现根据设置可以获取网页中指定的内容.以下是程序部分,包括在WEB页中的ASP.NET的源程序和C#中的源程序. ASP.Net (GetWebconten

ASP程序界面的多语言支持

程序 ASP程序界面的多语言支持 可能有的web应用程序,需要多语言支持,例如,讨论组,既有中文界面,以适合国人使用的方便,又需要英文界面,以满足国际化的需要.我想,似乎没有必要为每一个语言都写一个版本,这不仅比较繁琐,而且以后程序升级就必须修改所有版本的程序.熟悉vc++程序的朋友一定知道通常windows应用程序的国际化手段都是通过rc文件来解决的.只要重新加入不同语言版本的rc文件编译一下就行了.asp程序不能编译也不需编译.我于是开始考虑使用数据库,将ASP程序中使用到的提示信息/甚至图

使用Control.Invoke处理多线程应用程序界面

程序|多线程 使用Control.Invoke处理多线程应用程序界面 使用单一线程,在进行大计算量或耗时的操作时,会使界面失去响应.Control.Invoke 提供了一个在工作线程中更新见面的简单办法.该函数会把作为参数的回调函数提交给应用程序的界面进程(一般是主线程)的队列中,等待处理.这样,对界面的操作便无须担心同步.互锁等问题. 以下例子摘自一个局域网资源搜索程序        可以看到,线程池中的工作线程通过调用TreeView的Invoke方法,并提供一个回调函数,来实现对TreeV

程序界面多模式显示的实现

如果你用过RealPlayer播放器的话,那就一定对它的多模式显示方式不会陌生吧!RealPlayer拥有正常和精简两种显示模式.我们有时也想在自己的程序界面上实现类似的功能,该怎样实现呢?下面拿我用VC6.0做的一个多模式显示程序示例来向大家展示,它是怎样实现类似功能的.如下图所示:(图一) 正常显示模式:(图二)简洁显示模式,无视图:(图三),精简显示模式,仅工具条. 图一 图二 图三 基本构成思想: 实现原理很简单,只要分别获取窗体大小.客户区大小.工具条大小.状态条大小.边框大小以及标题

VC程序界面多模式显示

看过徐景周写过的一篇"程序界面多模式显示的实现",在一个应用程序中使程序拥有多种显示模式,但是这个界面是由SDI的MFC文档视图结构实现,但是使用的代码在MDI的多文档/视图中不能实现,通过MSDN我找到了一些实现 MDI 的多模式实现方法,不敢独享,与大家分享 . 利用SDI和MDI实现这种多模式的显示的应用程序,第一步首先要实现的是可以动态加载和销毁菜单.对于SDI的应用程序,实现是比较简单的,对于MDI的应用程序,实现则是有些麻烦,不过,这些都是可以做到的!呵,呵! 首先,要将S