qt调用js,js调用qt

<html>
<script language="JavaScript">
function qtcalljs()
{
alert("sdfsd");
}
function jscallqt()
{
mainWindow.dosome();
}
</script>
<body>
<button onclick="jscallqt()" style=="height:20px;width:100px"/>
</body>
</html>

qt.h:

#ifndef QTTT_H
#define QTTT_H #include <QtGui/QMainWindow>
#include <QWebKitPlatformPlugin>
#include <QWebFrame>
#include <QMessageBox>
#include <QObject>
#include "ui_qttt.h" class qttt : public QMainWindow
{
Q_OBJECT public:
qttt(QWidget *parent = 0, Qt::WFlags flags = 0);
~qttt(); private:
Ui::qtttClass ui; private slots:
void pop();
void addMyObjectToJavascript();
public:
Q_INVOKABLE void dosome();
}; #endif // QTTT_H

qt.cpp

#include "qttt.h" qttt::qttt(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this); ui.webView->load(QUrl("test.html"));
connect(ui.pushButton,SIGNAL(clicked()),this,SLOT(pop()));
connect(ui.webView->page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), this, SLOT(addMyObjectToJavascript())); } qttt::~qttt()
{ } void qttt::pop()
{ ui.webView->page()->mainFrame()->evaluateJavaScript("qtcalljs();");
} void qttt::addMyObjectToJavascript()
{
ui.webView->page()->mainFrame()->addToJavaScriptWindowObject("mainWindow", this);
} void qttt::dosome()
{
QMessageBox::aboutQt(this,"sdfsa");
}

qt调用js,js调用qt的更多相关文章
- egret调用页面js的方法。
参考文献: http://bbs.egret-labs.org/thread-267-3-1.html http://docs.egret-labs.org/post/manual/threelibs ...
- Android-webview和js互相调用
Android-webview和js互相调用 Android 和 H5 都是移动开发应用的非常广泛.市面上很多App都是使用Android开发的,但使用Android来开发一些比较复杂附属类,提示性的 ...
- ASP.NET后台调用前台JS函数的三种常见方法
第一种:使用普通的添加控件中的Attributes属性进行调用 例如,像一般的普通的按钮:Button1.Attributes.Add("onclick","MyFun( ...
- 关于action script与js相互调用的Security Error问题
大家都知道,as和js相互调用可以通过ExternalInterface.call和ExternalInterface.addCallback来进行. 比较好的做法是使用之前通过ExternalInt ...
- JS如何调用隐藏按钮的click事件
js如何调用隐藏按钮的click事件:1.设定隐藏不要使用Visiable属性,使用style.display=none:2.触发JS事件可以使用fireEvent方法,如:document.getE ...
- JS方式调用本地的可执行文件
看到一个方法,有些用,先存下来,有用的时候再用. 前几天,在IE,FIREFOX中实现了用JS方式调用本地的可执行文件.地址:www.yihaomen.com/article/js/211.htm , ...
- 前台JS(Jquery)调用后台方法 无刷新级联菜单示例
前台用AJAX直接调用后台方法,老有人发帖提问,没事做个示例 下面是做的一个前台用JQUERY,AJAX调用后台方法做的无刷新级联菜单 http://www.dtan.so CasMenu.aspx页 ...
- Windows下gcc以及Qt的DLL文件调用之总结(三种方法)
DLL与LIB的区别 :1.DLL是一个完整程序,其已经经过链接,即不存在同名引用,且有导出表,与导入表lib是一个代码集(也叫函数集)他没有链接,所以lib有冗余,当两个lib相链接时地址会重新建立 ...
- asp.net 调用前台JS调用后台,后台掉前台JS
C#前台js调用后台代码前台js<script type="text/javascript" language="javascript"> func ...
- WebView使用详解(一)——Native与JS相互调用(附JadX反编译)
念念不忘,必有回响,永远坚持你所坚持的! 一直在用WebView,还没有系统的总结过它的用法,下面就系统的总结下,分享给大家 一.基本用法 1.加载在线URL void loadUrl(String ...
随机推荐
- Java8简明指南
Java8简明指南 转载自并发编程网 – ifeve.com本文链接地址: Java8简明指南 欢迎来到Java8简明指南.本教程将一步一步指导你通过所有新语言特性.由短而简单的代码示例,带你了解如何 ...
- php -- 表单多选
----- 011-form.html ----- <!DOCTYPE html> <html> <head> <meta http-equiv=" ...
- JavaScript基础(一)概述
JavaScript 概述 JS作用 验证表单(以前的网速慢) 页面特效(PC端的网页效果) 移动端(移动web和app) 异步和服务器交互(AJAX) 服务端开发(nodejs) 语言类型 js是一 ...
- 33-hadoop-cdh搭建coudemanager安装
http://www.aboutyun.com/thread-9219-1-1.html 非常强大的博客 ! ! ! 1, cdh简介 CDH (Cloudera’s Distribution, i ...
- C# 连接 sql server
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...
- Python代码注释应该怎么写?
https://zhuanlan.zhihu.com/p/22663276?refer=passer http://zh-google-styleguide.readthedocs.io/en/lat ...
- java sendmail
http://blog.csdn.net/Guerlei/article/details/53189522
- Deep learning with Python 学习笔记(5)
本节讲深度学习用于文本和序列 用于处理序列的两种基本的深度学习算法分别是循环神经网络(recurrent neural network)和一维卷积神经网络(1D convnet) 与其他所有神经网络一 ...
- JavaScript 总结(前端常用工具类的封装)
JavaScript (class是ES6的新东西,看着不爽可以变,但主要还是里面的方法) 1. type 类型判断 class TypeFn { isString (o) { //是否字符串 ret ...
- c# LINQ用法
一.什么是LINQ LINQ(读音link)代表语言集成查询(Language Integrated Query),是.NEt框架的扩展,它允许我们用SQL查询数据库的方式来查询数据的集合,使用它,你 ...