我想将WYSIWYG

HTML编辑器添加到我的

Java程序中.

我的想法是做像

this这样的事情

但不是用python – 用Java.

我知道几个选项及其问题:

> HTMLEditorKit – 不够复杂.

> JWebpane – 童话故事.

> QtWebKit – 不是开源的.

> JWebEngine – 不是开源的.

> Metaphaseeditor – 简单.

> Lobo项目 – 不支持contenteditable属性.

> JavaXPCOM – 我不成功在我的Mac OS X 10.6上运行它.

无论如何,我只是不想使用它,因为Gecko比webkit慢.

这是我选择合作的方式

Browser Object来自org.eclipse.swt.browser包.

现在,我有以下代码:

代码,首先创建一个浏览器对象的实例.

在此之后,它会在body标签上加载带有contenteditable =’true’属性的HTML页面.

如果它加载一个页面,它应该为body标签添加contenteditable =’true’属性,当它保存页面时,它应该删除它.

我的问题是:

>如何获取已编辑的HTML代码?

>我如何知道光标是否踩到了?

>我如何知道某些文字是否突出显示?

或者,一般来说:

>

如何使用Browser Object和ontenteditable =’true’属性构建word拥有者?

>有可能吗?

>这是Java中WYSIWYG HTML编辑器的正确方法吗?

>那里有任何例子吗?

我已经检查过SWT Snippets – 没什么用.

非常感谢.

import org.eclipse.swt.SWT;

import org.eclipse.swt.SWTError;

import org.eclipse.swt.browser.Browser;

import org.eclipse.swt.layout.FillLayout;

import org.eclipse.swt.widgets.Composite;

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Shell;

public class editor {

public static void main(String [] args) {

String html = "

Editor"

+ "

"

+ "

All the Page is ditable!!!!!

"

+ "

Heres a typical paragraph element

"

+ "

  1. and now a list"

+ "

with only"

+ "

three items"

+ "

";

Display display = new Display();

Shell shell = new Shell(display);

shell.setLayout(new FillLayout());

final Browser browser;

try {

browser = new Browser(shell,SWT.BORDER);

}

catch (SWTError e) {

System.out.println(e.getMessage());

display.dispose();

return;

}

Composite comp = new Composite(shell,SWT.NONE);

comp.setLayout(new FillLayout(SWT.ALL));

browser.setText(html);

shell.open();

while (!shell.isDisposed()) {

if (!display.readAndDispatch())

display.sleep();

}

display.dispose();

}

}

java swt webkit_使用Java和Webkit的HTML编辑器 – SWT浏览器相关推荐

  1. java swt shell_一个java swt桌面程序开发到打包的总结(1)

    一个java swt桌面程序开发到打包的总结(1) --概述与关于swt的问题 一.概述: 几天一直在用金山打字通练习英语(本人英语比较烂),把金山打字能里面的文章全部掠了N遍.打的没意思了,想想怎么 ...

  2. java 开发swt_一个java swt桌面程序开发到打包的总结(1)(收集)

    --概述与关于swt的问题 一.概述: 几天一直在用金山打字通练习英语(本人英语比较烂),把金山打字能里面的文章全部掠了N遍.打的没意思了,想想怎么能添加一些外部文件,发现金山打字通自带的外部文件导入 ...

  3. 【java毕业设计】基于java+swing+GUI的连连看游戏设计与实现(毕业论文+程序源码)——连连看游戏

    基于java+swing+GUI的连连看游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+swing+GUI的连连看游戏设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦 ...

  4. java界面布局举例,java图形界面实例

    java写一个图形程序,让数组输出在图形界面上 代码怎么写?别那么复杂的. 已把程序文件打包上传了,并附上运算结果图. import javax.swing.*;import java.awt.*;i ...

  5. java填充wordxml格式,java xml转成word文档格式

    xml格式如何转换成doc格式文件 通过jodconveter来实现转化(http://www.artofsolving.com/opensource/jodconverter). 这种方式实现起来比 ...

  6. Java初学者问道:Java IDE选择

    随着Java应用程序越做越大.越做越复杂.Java IDE在其中所起的作用也日益显著.有了Java IDE,使软件的生产率倍增.但目前Java IDE的种类繁多,功能也各不相同.这就给我们的选择带来了 ...

  7. Java这十年 - Java技术本纪 (3)

    Java技术本纪 Java虚拟机的  10    年 文/曹晓刚 Java虚拟机的起源与构造 当我们说到"Java"这个词的时候,指的是四个相互关联的概念:Java语言.Java ...

  8. java快照_网页快照 java 实现 | 学步园

    cping1982 大哥真的很厉害愿意开源写代码给大家 先在的优秀程序员能想他一样的真少见 敬礼 import java.awt.BorderLayout; import java.awt.Dimen ...

  9. java type proposals_Java proposals、Java Type proposals和Java Non-Type proposals区别

    问题背景(可以选择性跳过直接看结论-.-) 最近换了一个Eclipse,在写代码的时候发现代码提示有问题,比如想打this,打出th却不提示this这个整词.于是我便去"首选项->Ja ...

最新文章

  1. RDKit | 基于RDKit(≥2020.09.1)的相似图绘制新方法
  2. 相对友好的 AVL Tree 教程
  3. Linux设备模型(热插拔、mdev 与 firmware)
  4. nodejs-REPL/回调函数/事件循环
  5. android多行文本框hint居中,在安卓等移动浏览器中placeholder中的文字不垂直居中问题...
  6. 达不达标的公式计算机,“我面试了几十个大学生都不达标,连这3个Excel公式都看不懂”...
  7. 链式编程和函数式编程
  8. drupal全部都是节点_如果Drupal是一支乐队,那将是Rush
  9. sqlserver去重记录_SQL去除重复记录(七种)
  10. 计算机usb速度设置,怎样提升USB2.0的速度 注册列表修改法【详解】
  11. cadence16.6安装教程
  12. oracle地理数据库,Oracle 中的多个地理数据库 (geodatabase)
  13. 企业如何做好服务器防护45.113.201.1
  14. url 与 domain
  15. 怎么用python学习网站开发_2018年最好用的5个python网站开发框架
  16. Tomcat 5.5 配置
  17. 浪潮服务器光盘装系统教程图解,浪潮服务器安装操作系统简要步骤说明.doc
  18. excel单元格内换行
  19. 安卓Camera一代基于虹软人脸识别程序开发
  20. 3D 小姐姐模型是怎么“捏”成的? 初识 Mesh 知识点!

热门文章

  1. 同网段不同网段主机间通信原理
  2. SQL语言之组函数(Oracle)
  3. Synchronize对象改变
  4. Select2控件的使用
  5. 【SpringMVC 之应用篇】 2_SpringMVC 的传参问题
  6. 牛人 20000 字的 Spring Cloud 总结,太硬核了~
  7. Hexo博客新福利:HexoEditor编辑器最新使用方法
  8. 带你学python基础:面向对象编程
  9. Java 技术之动态代理机制
  10. 蓝桥杯java第四届决赛第四题--九宫重排