TAT.melody Webtop 桌面 HTML5 WebApp 引擎
In 未分类 on 2012年07月20日 by view: 38,176
57

新版发布,敬请关注

这是个什么东西?这是个用 web 开发桌面 app 的引擎,或者你可以简单的认为它是一个透明浏览器。可是它能做的不仅仅如此,它提供了大量的本地 api,使 web 的能力得到从所未有的提升,也使开发桌面 app 变得如此轻松简单。你有试想过自己开发一个浏览器吗?或者一个 qq。以前,或许你会说这太难了。可是,从今天开始,这一切都变得如此简单。这不是预想,这是已经实现的事情。

下载地址:

官方群:257960168

 

一、示例 Demo

这个引擎本来是无影无形。可是,人们总是希望能看到一个东西。所以,我做了一个初始界面,放了几个 demo 在上面。

透明浏览器

音乐 widget

桌面尺子

 

二、使用详解

说了这么多,或许你会急切的想知道该怎么开发,或许你会期盼一个教程。我很遗憾的告诉你,没有教程。因为这一切都是原有的东西,你只要会开发网页,你就能做 app。我只会给出我的一些建议。建议在开发时使用提供的透明浏览器 demo 进行调试,可以点击右上角这个按钮打开控制台,点击右上角这个按钮可以生成.app 文件,可以直接双击运行。或者你可以使用记事本打开.app 文件(注:不要设为默认打开),你就会明白原来一切是如此简单。

下面我给出一个尚未定稿的 api 说明文档:

以下为 api 列表和浏览器事件的回调函数列表,api 较多,并未全部列举出来,可按 f12 打开控制台输入 webtop 查看全部 api

  • webtop.close = function() { };//关闭窗口
  • webtop.stopDrag = function() { };//停止拖拽
  • webtop.setSize = function(w,h) { };//设置窗口大小
  • webtop.move = function(x,y) { };//移动窗口
  • webtop.max = function() { };//最大化窗口
  • webtop.mini = function() { };//最小化窗口
  • webtop.restore = function() { };//还原窗口
  • webtop.drag = function() { };//开始拖拽窗口
  • webtop.bringToTop = function() { };//窗口移到最上层
  • webtop.focus = function() { };//窗口聚焦
  • webtop.loadUrl = function(url) { };//改变窗口的 url
  • webtop.getPos = function() { };//获取窗口位置
  • webtop.getSize = function() { };//获取窗口大小
  • webtop.enableDrag = function() { };//允许全窗口拖拽
  • webtop.quit = function() { };//退出进程
  • webtop.ready = function() { };//调用后会调用窗口的 webtop.readyHandler() 函数
  • webtop.createWindow = function(url,exStyle,transparent,readyHandler) { };//创建窗口
  • webtop.createWindowBase = function(url,exStyle,transparent,readyHandler) { };//使用相对路径创建窗口
  • webtop.createBrowser = function(url) { };//创建浏览器,会新起一个进程
  • webtop.browse = function(url) { };//浏览网页
  • webtop.setTitle = function(title) { };//设置窗口标题
  • webtop.getImage = function() { };//把网页存为图片
  • webtop.showDev = function() { };//显示调试工具
  • webtop.readFile = function(path) { };//读取文件,只直接字符串
  • webtop.writeFile = function(path,s) { };//写文件,只直接字符串
  • webtop.getSaveName = function(filename) { };//打开保存对话框
  • webtop.runApp = function(appName) { };//在当前进程运行 app
  • webtop.runAppEx = function(appName) { };//在新起的进程运行 app
  • webtop.getOpenName = function(filename) { };//打开 “打开” 对话框
  • webtop.reload = function() { };//刷新页面
  • webtop.reloadIgnoreCache = function() { };//强制刷新页面,不使用缓存
  • webtop.setTopMost();//窗口置顶
  • ……

回调函数

  • webtop.sizeHandler=function(w,h){}//窗口大小改变后的回调函数
  • webtop.moveHandler=function(x,y){}//窗口移动后的回调函数
  • webtop.closeHandler=function(){}//窗口关闭后的回调函数
  • webtop.focusHandler=function(){}//窗口聚焦的回调函数
  • webtop.activeHandler=function(x,y){}//窗口激活的回调函数
  • webtop.dragHandler=function(fileList){}//文件拖拽进来的回调函数
  • ……

很遗憾,在这里我不能把一些高级功能及高级使用方法列出来。不过,如果您愿意,可以联系我,我会尽我所能给予帮助。请持续关注我们的博客~

http://www.alloyteam.com/2012/07/webtop-engine/

这一切,只是为了我们能生活得更好~

原创文章转载请注明:

转载自AlloyTeam:http://www.alloyteam.com/2012/07/webtop-engine/

  1. 6z 2014 年 1 月 16 日

    双屏幕下(将应用程序拖到第二个屏幕),鼠标拖动窗体边缘,改变窗口大小后,鼠标再也回不到正常状态了

  2. shusnail 2014 年 1 月 2 日

    木有教程?

  3. xioxin 2013 年 11 月 15 日

    还有不少 css3 不兼容

  4. iwind 2013 年 11 月 1 日

    点击右键可否能出现 “返回” 和” 刷新 “按钮?这两个功能很有用。

    • iwind 2013 年 11 月 1 日

      还有元素点击后无反应。

  5. 红红 2012 年 9 月 4 日

    里面用的是 CEF1 还是 CEF3 啊

    • TAT.melody

      melody 2012 年 9 月 4 日

      cef1

      • 碌木 2012 年 9 月 6 日

        cef1 和 cef3 两者有什么区别. 我至今未明白

  6. TAT.melody

    melody 2012 年 8 月 29 日

    新版发布,去掉 handler 参数,支持托盘图标

    • 碌木 2012 年 8 月