1、代码:

#include "mainwindow.h"
#include "ui_mainwindow.h" #include <QWebFrame>
#include <QWebElement>
#include <QDebug> MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
} MainWindow::~MainWindow()
{
delete ui;
} void MainWindow::on_pbtnOpenSVG_clicked()
{
ui->webView->load(QUrl::fromLocalFile("D:\\DRGIS\\BIN\\PwDrawSvg\\NewSvg.svg"));
} void PatchElement(void *_p)
{
#ifndef DEBUG_ZZ
_asm
{
push eax
mov eax,_p
mov eax,[eax+]
or [eax+0xc],0x10
pop eax
}
#else// DEBUG_ZZ
_asm
{
push eax
mov eax,_p
mov eax,[eax+]
or [eax+0x14],0x10
pop eax
}
#endif// DEBUG_ZZ
} void PatchElementUn(void *_p)
{
#ifndef DEBUG_ZZ
_asm
{
push eax
mov eax,_p
mov eax,[eax+]
and [eax+0xc],0xFFFFFFEF
pop eax
}
#else// DEBUG_ZZ
_asm
{
push eax
mov eax,_p
mov eax,[eax+]
and [eax+0x14],0xFFFFFFEF
pop eax
}
#endif// DEBUG_ZZ
} void MainWindow::on_pbtnAppendWebEle_clicked()
{
QWebElement eleSvg = ui->webView->page()->currentFrame()->documentElement();
//qDebug() << eleSvg.tagName(); QWebElement eleFind = eleSvg.findFirst("#Term_Layer");
if (eleFind.isNull())
qDebug() << "eleFind is Null";
else
qDebug() << "eleFind is not Null";
QString str = "<g id=\"zzz\"></g>";

  // ZC: 下面的 PatchElement()和PatchElementUn(),暂时是在 Release中使用,Debug中不确定一定OK...
PatchElement(&eleFind);  // ZC: 使用QWebElement::???Inside(...)的时候,就要对 那个节点 进行Patch ! ! !
eleFind.appendInside(str);
PatchElementUn(&eleFind); PatchElement(&eleFind.parent());  // ZC: 使用QWebElement::???Outside(...)的时候,就要对 那个节点的父节点 进行Patch ! ! !
eleFind.appendOutside(str);
PatchElementUn(&eleFind.parent());
} void MainWindow::on_pbtnPrintSvgContent_clicked()
{
qDebug() << ui->webView->page()->currentFrame()->toHtml();
}

2、

#-------------------------------------------------
#
# Project created by QtCreator 2018-08-15T09:00:45
#
#------------------------------------------------- QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets \
webkit \
webkitwidgets TARGET = WebView_Test_01
TEMPLATE = app SOURCES += main.cpp\
mainwindow.cpp HEADERS += mainwindow.h FORMS += mainwindow.ui

3、

4、

5、

Qt5.WebView.添加节点的测试代码的更多相关文章

  1. VS添加节点

    很喜欢添加节点来减少代码的长度,方便阅读:VS快捷键和相关设置

  2. squid节点添加新域名测试

    squid节点添加新域名 测试是否缓存成功 #!/bin/bash #-- clear #清屏 方便输出结果观看 url=* #需要测试的url array_node[]="*" ...

  3. 支持阻塞操作和轮询操作的globalfifo设备驱动代码分析以及测试代码

    #include <linux/module.h> #include <linux/types.h> #include <linux/fs.h> #include ...

  4. LED字符设备驱动实例及测试代码

    驱动代码如下: #include <linux/kernel.h>//内核头文件 #include <linux/init.h>//__init等 #include <l ...

  5. Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码

    Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本文主要是记录一写我在学习MapReduce时的一些 ...

  6. 使用Microsoft Fakes隔离测试代码

    在单元测试(Unit Test)中我们遇到的问题之一是:假如被测试组件(类或项目)为A,组件A依赖于组件B,那么在组件A的单元测试ATest中测试A时,也需要依赖于B,在B发生改动后,就可能影响到A的 ...

  7. JQuery 添加节点

    Mark一段自己写的添加节点的代码 function reply2(){ $( "<div class=sec1-div5>"+"<div class= ...

  8. netbeans中给jpanl添加背景图片制定代码的理解——匿名内部类继承父类

    此测试是为了仿照在netbeans中给jpanl添加背景图片的制定代码的执行过程 在JpDemo中定义了个Car类的数据类型,但在给其赋值对象时使用了匿名内部类,继承了Car类,是其子类,并重写了父类 ...

  9. mvn编写主代码与测试代码

    maven编写主代码与测试代码 3.2 编写主代码 项目主代码和测试代码不同,项目的主代码会被打包到最终的构件中(比如jar),而测试代码只在运行测试时用到,不会被打包.默认情况下,Maven假设项目 ...

随机推荐

  1. Deeplearning 两层cnn卷积网络详解

    https://blog.csdn.net/u013203733/article/details/79074452 转载地址: https://www.cnblogs.com/sunshineatno ...

  2. 原生Ajax和jqueryAjax写法

    原生写法: $('#send').click(function(){ //请求的5个阶段,对应readyState的值 //0: 未初始化,send方法未调用: //1: 正在发送请求,send方法已 ...

  3. Redis可以用来做什么?(摘自http://www.lianpenglin.cc廉鹏林博客)

    Redis 是互联网技术领域使用最为广泛的存储中间件,它是「Remote Dictionary Service」的首字母缩写,也就是「远程字典服务」.Redis 以其超高的性能.完美的文档.简洁易懂的 ...

  4. Golang字符串格式化

    Go对字符串格式化提供了良好的支持.下面我们看些常用的字符串格式化的例子. package main import ( "fmt" "os" ) type po ...

  5. 记录Linux中遇到的技巧

    压缩排除.svn目录 打包test目录,排除其中所有子目录中的.svn文件夹: # tar -zcf test.tar.gz test/ --exclude=.svn# zip -qr test.zi ...

  6. Microsoft Visual Studio 2010(vs10)安装与使用

    安装1.下载软件: 云盘分享http://pan.baidu.com/s/1i4JL9GT 2.安装 打开Microsoft Visual Studio 2010目录,双击setup.exe ,运行 ...

  7. Codeforces 995F Cowmpany Cowmpensation - 组合数学

    题目传送门 传送点I 传送点II 传送点III 题目大意 给定一个棵$n$个点的有根树和整数$D$,给这$n$个点标号,要求每个节点的标号是正整数,且不超过父节点的标号,根节点的标号不得超过D. 很容 ...

  8. 如何卸载旧版本的dotnet core

    How to remove the .NET Core Runtime and SDK https://docs.microsoft.com/en-us/dotnet/core/versions/re ...

  9. html 之 区块元素属性(待补充)

    区块标签:(会随着父类的宽度变化而变化) p,div 等(后续补充) 区块标签才能使用以下属性() width,height,min-height,max-height,min-width,max-h ...

  10. P3232 [HNOI2013]游走

    吐槽 傻了傻了,对着题解改了好长时间最后发现是自己忘了调用高斯消元了... 思路 期望题,分配编号,显然编号大的分给贡献次数小的,所以需要知道每个边被经过次数的期望 然后边被经过的次数的期望就是连接的 ...