aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 10993|回复: 2

process.chrome.app使用问题

[复制链接]

8

主题

8

回帖

114

积分

一级会员

积分
114
发表于 2018-5-17 21:55:50 | 显示全部楼层 |阅读模式
今天尝试将一个bink的项目改成chrome.app,配合websocket,效果非常好,但遇到两个小问题,不知道其他朋友遇到没有,或许是我的使用方法不对:1、使用传入winform,拖动边框改变大小出问题;2、无法在index.aardio页面的text输入框内输入中文,英文OK,测试代码main.aardio:
process.chrome.app;
import win.ui;
/*DSG{{*/
winform = win.form(text="4G查询系统";right=882;bottom=489;bgcolor=16777215;border="dialog frame")
winform.add()
/*}}*/
/*
在下面的external对象中指定允许chrome中使用JS直接调用的函数
在网页中直接引用"/aardio.js"下面的external 会自动转换为js中的aardio对象.
"/aardio.js"是由 aardio虚拟的JS文件(不用自己准备这个文件)。
*/
var app = process.chrome.app(winform);//可选在参数中指定winform或custom控件并自动嵌入chrome到该窗口
//WebSocke/RPC中遇到的错误都会触发这个函数,可以在这里自定义错误处理方式
app.ws.onError = function(hSocket,err){
        errput(err,"chrome/rpc error");//当然也可以在 global.onError 里自定义全部的错误信息怎么显示
}

app.external = {
   
    //加载一个页面完成会触发这个事件(要求引用了"/aardio.js")
    onLoadUrl = function(url){
        
        //接收js函数的返回值
                app.callback("hello",function(hSocket,result,err){
                        app.msgbox(result : err,"调用js的hello函数以后返回值了");
            })

        //调用JS函数
        app.survey("hello","aardio");
    }
    test = function(...){
       win.msgbox(...)
    }
}
//正式的启动chrome进程,aardio会自动把下面的文件转换为服务端请求
app.start("/res/index.aardio");
winform.show();
//网页中可以调用 aardio.quit() 退出,也可以直接关闭chrome窗口退出
win.loopMessage();

index.aardio代码:
<!DOCTYPE html>
<html>

  <head>
    <meta charset="UTF-8">
    <title>aardio嵌入chrome演示( 这里设置窗口标题 )</title>
   
    <script src="/aardio.js">
   
            //aardio <--> chrome 通信接口准备就绪则执行这里的JS脚本
           
           
    </script>
   
  </head>
  
  <body>
    <div onmousedown='javascript:  
        aardio.hitCaption();
        return false;
    ' style="-webkit-user-select: none;cursor:default;background:#cce;padding:25px;margin:10px;">拖动窗口</div>
    <input type="text"/>
   <button onclick="alert(aardio.test('你好aardio');)">点这里调用aardio函数</button>  <button onclick="aardio.quit();">点这里退出</button>   <br> <br>
   
   aardio版本<?
   = _AARDIO_VERSION
   ?><br>
   <script>
   aardio.on("hello",(path)=>{
                    alert(path)
            })
   </script>

</html>

170

主题

2169

回帖

1万

积分

管理员

积分
13161
发表于 2018-5-18 01:30:40 | 显示全部楼层
不能拖动:是因为你自己禁用了拖动边框。
输入法的问题是chrome在子窗口下面的问题,你可以用独立窗口不要嵌入就没问题了。

8

主题

8

回帖

114

积分

一级会员

积分
114
 楼主| 发表于 2018-5-18 09:42:55 | 显示全部楼层
Jacen.He 发表于 2018-5-18 01:30
不能拖动:是因为你自己禁用了拖动边框。
输入法的问题是chrome在子窗口下面的问题,你可以用独立窗口不要 ...

感谢,问题解决,不嵌入使用独立窗口就都没问题了,用于bs模式的管理系统非常合适
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2024-10-4 19:05 , Processed in 0.073719 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表