2
  • 我正在尝试使用 webViewShow 方法在 QPython3 中执行简单的程序。
  • 我在将数据从 HTML 文件接收到 QPython3 脚本时遇到问题。
  • 如您所见,我在 HTML 文件中使用 droid.eventPost() 方法,但是当我尝试将结果打印到控制台时,没有任何显示。

QPython3脚本代码:

#-*-coding:utf8;-*- 
#qpy:3 
#qpy:console 

from android import Android 

droid = Android() 
droid.webViewShow('/storage/sdcard0/com.hipipal.qpyplus/scripts3/Bluetooth/btLED.html') 

while True: 
    result = droid.eventWait().result 
    print(result['data'])
    droid.eventClearBuffer() 

HTML文件的代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset='UTF-8' />
    <meta name="author" content="Jiri" /> 
    <title>blLED.py</title>         

<style>

body{
    background: white;
    margin: 0;
    padding-top: 3%;
    overflow: hidden;
    width: 100%;
    height: 95%; 
    text-align: center;  
}

button{
    margin-top: 1%;
    width: 22%;
    padding-top: 2%;
    padding-bottom: 2%;
    }           

hr{
    width: 75%;
    border-top: 2% solid black;
}

</style>
</head>


<body>

<script>  
    var droid = new Android();
</script>

    <div>LED | OFF</div>

    <hr>

    <button onclick="droid.eventPost('name', '1');">LED ON</button>
    <button onclick="droid.eventPost('name', '0');">LED OFF</button>

    <br>
    <hr>  

    <button onclick="droid.eventPost('name', 'Close');">Close</button>

    <br>  
    <hr>                   

</body>
</html>

我尝试了什么:

我尝试从 QPython 脚本向 QPython 脚本发送数据,因此代码如下所示:

while True:
    droid.eventPost('name', '1')
    result = droid.eventWait().result
    print(result['data'])
    droid.eventClearBuffer()
  • 但是控制台仍然没有打印任何东西。
  • 我真的玩过代码而且我的东西​​很简单而且不应该是错误的,所以我不知道问题出在哪里(可能是一些缺少的库?或类似的东西......我是 QPython 和 Android 程序的初学者)

所以问题是:你有什么想法,为什么 qpython 不从 HTML 文件接收数据?请帮忙....

谢谢(对不起我的英语)

吉尔卡

4

0 回答 0