当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 对WebUI技术感兴趣的说

Javascript
一个短小精悍使用的对象化QQ菜单
用数据岛生成翻页程序
轻松实现删除确认
IE5中用JavaScript跨frame加option问题
IE6无提示关闭窗口,不是利用activeX
下拉框联动
用dhtml做了一个密码管理器
面向对象的JavaScript编程
网 络 病 毒 与 防 范 措 施
破解网页禁止鼠标右键的技巧
JS编写的俄罗斯方块
通过代码改变客户端所显示的语言类型
欢迎精灵
事件处理函数OnEnter OnExit 使用一例
称三次从12球中找出唯一但不知轻重的球
VML实现的饼图(JavaScript类封装)
搜索gb2312汉字在网上的频率
真正的 用JS 做的 loading
Vml:应用阿基米德算法在网页制作动画,原程+注释
贴一例:当所有图片下载完毕时,然后显示网页(有进度)

Javascript 中的 对WebUI技术感兴趣的说


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 103 ::
收藏到网摘: n/a

Not(Not pleased by external gains, Not saddened by personnal losses.)
MSN:[email protected]

你想知道WebUI可以做到哪种境界?
你想不想试试用脚本开发Web程序(就像开发Windows的程序那样)
如果你的回答是肯定的,那么我告诉你一个好东西:Bindows

什么是Bindows
Bindows™ is a Graphical User Interface Toolkit for writing rich client side web applications with the look, feel and behavior of modern Windows™ applications. Bindows applications are lightweight applications with zero footprint which means no installation required.

To view Bindows™ in action view one of the samples or try out the forum. 

获取Bindows
http://www.i-see.net/bindows 

看看用Bindows开发出来的东西
http://www.i-see.net/bindows/documentation/samples/

如何使用Bindows
As is often common, we start of with the classic Hello World example. This example application shows how to create and add a text label.

The application code

var label = new BiLabel("Hello World");
label.setPadding(5);
application.getWindow().add(label);

The first thing we do is to create a new label object with the text "Hello World". Then we set the padding to 5 (default is 0). Finally we get the BiApplicationWindow object and adds the label to that.

The Application Description File

All applications in Bindows™ are defined by an XML file. This XML file is often referred to as the Application Description File or ADF for short. The ADF can be seen as the entry point to the application.  There is a naming convention for the application class name and the XML file name. If the application class name is HelloWorld then the XML file name must be HelloWorld.xml (or HelloWorld.extension).

Creating the Application Class

Once the file HelloWorld.xml is loaded the static method HelloWorld.main is called. Therefore we create a class with a static method called main. The main method just creates a new instance of the HelloWorld application.

// define constructor

function HelloWorld() {

   var label = new BiLabel("Hello World");

   label.setPadding(5);

   application.getWindow().add(label);

}

 

// define static main method

HelloWorld.main = function () {

   new HelloWorld();

};

Creating the XML

The above JavaScript code needs to be located inside a script block in the Application Description File.

<?xml version="1.0"?>

 

<application>

   <window caption="Hello World" width="300" height="200"/>

   <resources>

      <script><![CDATA[

 

// define constructor

function HelloWorld() {

   var label = new BiLabel("Hello World");

   label.setPadding(5);

   application.getWindow().add(label);

}

 

// define static main method

HelloWorld.main = function () {

   new HelloWorld();

};

 

      ]]></script>

   </resources>

</application>

View this XML file in your browser

The XML above contains two sections, the window element, which describes how large the window should be and the resources element which contains the application code inside a script element.

Launching the Application

We have now defined everything that is needed for a simple application but there is one more thing to do and that is to tell the web browser how to launch the application. This can be done in basically two different ways.

Using the Launcher Script

The easiest way to do this is most likely to use the bilauncher.js file provided in the html/js/ directory. This file provides a function called biExec which executes the application. First include the js file:

<script type="text/javascript"

   src="../../html/js/bilauncher.js"></script>

Then you can call the biExec function like this:

biExec('../../html', 'HelloWorld.xml');

The first argument points to the root directory of the Bindows™ toolkit (relative URI) and the second argument is the relative URI to the Application Description File.

To create a link that calls this use the following:

<a href="#" onclick="biExec('../../html', 'HelloWorld.xml');

   return false;">Launch HelloWorld.xml</a>

Launch HelloWorld.xml

Troubleshooting

The location and the relative paths are important. If you get an error message saying that "Object expected" then make sure that the bilauncher.js file is found from the current page.

If you get an error message saying "File not found" then the path to the ADF is not correct. The path to the ADF is relative to the current page. You can also use an absolute URL for this.

If a new window is opened but saying "The page cannot be displayed" the path to the Bindows system root is incorrect. The path to the Bindows system root is relative to the current page. You can also use an absolute path if you find these more convenient.

The paths given in the examples on this page are set up so that if you download the Bindows framework you'll be able to run the samples given in the samples/helloworld/ directory inside the zip file.

Create a new HTML file

When you are using the launcher described above the browser will navigate to html/bimain.html and then load the ADF. You can also create a new HTML page and start your ADF from that. The main reason to do it this way is that allows you to have an HTML page as the entry point to the application. To do this you can copy the content of bimain.html and modify it accordingly:

<!-- Back Compat -->

 

<html xmlns:v>

<head>

<title>Hello World</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<meta http-equiv="MsThemeCompatible" content="yes">

<link type="text/css" rel="StyleSheet" href="../../html/css/bimain.css">

<script type="text/javascript"

   src="../../html/js/application.js"></script>

</head>

<body>

 

<script type="text/javascript">application.start("../../html",

   "HelloWorld.xml");</script>

 

</body>

</html>

View this HTML file in your browser

The first argument to application.start is the URI to the Bindows™ toolkit root directory and the second is the URI to the ADF.

Troubleshooting

Once again the paths are important. If you get an error saying "appliction is undefined" then the application.js file was not correctly included. Make sure that the path from the current page to the application.js file is correct. The path to the js file is relative to the HTML file. You can also use an absolute path if you find these more convenient.

If you get several errors saying "Error loading file" and then the file names make sure that the first argument to application.start is the relative path to the Bindows system directory. You can also use an absolute path if you find these more convenient.

If you get an error saying "Error loading ADF" then the ADF XML file could not be found using the path relative the current page. Make sure that the path to the XML is correct (giving the location of the current page, or use an absolute URL).

 

如果你也和我一样对此激动不已,那我再告诉你一个网址:http://webfx.eae.net,爱好DHTML技术的朋友别告诉我你不知道它!