zhangjie
游民
积分:30

Openface 模拟器

请问一下Openface模拟器如何在电脑中使用呢,我已经打开了主页面,但是如何进行操作呢??我按键盘跟鼠标都无法响应啊??急需!!!谢谢各位指教!!!

nancy
版主
积分:1072

模拟器打开后按理会显示默认的desktop应用,所以相应的操作是根据目前的desktop来决定的。
但是您打开后显示白屏,说明原有的desktop被冲掉了,而新的又没有内容(可能)。所以您应先检查一下您写的应用,建议从简单的开始,比如一个简单的hello
world,要保证这个正确了,再开始别的。可以将desktop下的内容清空,这样模拟器会自动重新恢复原始的默认desktop。
对于初始的模拟器的一些简单的操作可参考:
http://www.openface.org.cn/wiki/index.php/OpenFace_%E6%A8%A1%E6%8B%9F%E5...

zhangjie
游民
积分:30

模拟器上有界面,但是我不知怎么按哪些键来激活那程序。比如是新闻那个应用例子,显示了主界面,怎么通过电脑进行上下选择或者按确认浏览详细信息??谢谢你的回答!!

nancy
版主
积分:1072

在示例的代码中尼可以看到有一些关于按键操作的内容,这些就代表相应的按键开发者用来做了什么。而在论坛中
http://www.openface.org.cn/node/159
有一些键值表,可以对照看看。

case 38: //up
case 4112:
canvas.move(-1);
break;
case 40: //down
case 4113:
canvas.move(1);
break;
case 13:
case 0x1012:
case 35:
case 0x100c:
if(vNews.getAttribute("visible")){
vNews.setVisible(false);
vread.setVisible(true);
var p = new LzDatapointer();
var str =
"myData:/news/item["+(vNews.findex+1)+"]/content";
p.setXPath(str);
vread.t2.setText(p.getNodeText());
p.selectPrev();
vread.t1.setText(p.getNodeText());
lb.setText(" ");
rb.setText("返回");
}
break;
case 34:
case 0x100d: //right button
if(vNews.getAttribute("visible")=="false"){
vNews.setVisible(true);
vread.setVisible(false);
lb.setText("选择");
rb.setText(" ");
}
break;
}

zhangjie
游民
积分:30

我打开模拟器,有应用,但是在键盘上按任何键程序都没有反应啊???

nancy
版主
积分:1072

两种情况:
1、你运行别人的应用,按按键没有反应。

你需要知道应用按哪个键才有反应。可以询问相关开发人员,或者查看源代码判断。

2、你运行自己编写的应用,按按键没有反应。
你需要理解onkeydown handler的用法。
最简单的一个源代码:
<canvas width="240" height="320">
<text name="text" text="hello,press key" resize="true" fontsize="20"
y="30"/>
<handler name="onkeydown" reference="LzKeys" args="key">
canvas.text.setText("key is:"+key);
//key是键值,比如小键盘上的数字1为97
</handler>
</canvas>

注意:在某些情况下的PC机的键值结果可能不同,比如说笔记本。但是通过上面源代码你可以知道每个PC机中不同按键的键值。