htmlPanel:oracle Forms的文本编辑器《完整示例见附件》
/**
*
* @author XIVA
*/
import javax.swing.JScrollPane;
import javax.swing.JTextPane;
import javax.swing.text.html.HTMLEditorKit;
import oracle.forms.handler.IHandler;
import oracle.forms.ui.*;
import oracle.forms.properties.ID;
/**
* HTML Styled JTextPane
*
* @author XIVA
* @version 1.6
*/
public class HtmlPanel extends VBean
{
protected static final ID pSetText = ID.registerProperty("SET_TEXT");
protected static final ID pSetEdit = ID.registerProperty("SET_EDIT");
protected static final ID pGetText = ID.registerProperty("GET_TEXT");
protected static final ID pLostFocus = ID.registerProperty("BEAN_QUITTED");
protected JTextPane m_editor;
protected HTMLEditorKit m_kit;
@Override
public void init(IHandler handler)
{
super.init(handler);
}
/**
* Constructor
*/
public HtmlPanel()
{
super();
// new JTextpane
m_editor = new JTextPane();
m_kit = new HTMLEditorKit();
m_editor.setEditorKit(m_kit);
JScrollPane ps = new JScrollPane(m_editor);
add(ps);
ps.setVisible(true);
}
/******************************************
* Get the text content to return to Forms
******************************************/
@Override
public Object getProperty(ID pId)
{
if (pId == pGetText)
{
return "" + m_editor.getText();
}
else
{
return super.getProperty(pId);
}
}
/**********************************
* Set the text content from Forms
**********************************/
@Override
public boolean setProperty(ID pId, Object pValue)
{
if (pId == pSetText) // set the user value
{
String s = (String)pValue ;
m_editor.setText(s);
return true;
}
if (pId == pSetEdit) // set the edit flag
{
String s = (String)pValue ;
if(s.equalsIgnoreCase("true")) m_editor.setEditable(true);
else m_editor.setEditable(false);
return true;
}
else
{
return super.setProperty(pId, pValue);
}
}
} // HtmlPane
主要扩展类VBean。
开发时,需要使用到下面的jar包。改包位于:D:\Oracle\Middleware\Oracle_FRHome1\forms\java
在forms中使用这个类时,需要将其打包为jar包,然后拷贝到D:\Oracle\Middleware\Oracle_FRHome1\forms\java路径下,然后在formsweb.cfg中更改:archive=frmall.jar,htmlpane.jar
formsweb.cfg文件的路径如下:
D:\Oracle\Middleware\user_projects\domains\ClassicDomain\config\fmwconfig\servers\AdminServer\
applications\formsapp_11.1.2\config
最好将路径D:\Oracle\Middleware\Oracle_FRHome1\forms\java,添加到path变量中,这样就可以使用这个类了,却不报找不到该类的警告。
分享到:
相关推荐
c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制...
在文本编辑器中,可能使用了Panel或者SplitContainer控件来组织和分隔界面。 2. **事件处理**:文本编辑器会响应用户的键盘和鼠标操作,比如点击、双击、拖动等。这需要为控件添加事件处理器,例如KeyDown、KeyUp、...
Java编写的文本编辑器是一种基于Java Swing库的应用程序,用于创建和编辑文本文件。这个文本编辑器具有类似于Windows记事本的基本功能,如文本输入、保存、打开等,并且可以通过键盘快捷键进行操作。以下是对Java...
《JS插件NicEdit富文本编辑器特效源码解析与应用》 在Web开发中,富文本编辑器是不可或缺的一部分,它为用户提供了类似于桌面文字处理软件的编辑体验。NicEdit是一款轻量级且功能丰富的JavaScript插件,适用于快速...
xhEditor是一款功能丰富的网页文本编辑器,常用于ASP.NET应用程序中,为用户提供类似Word的富文本编辑体验。它支持多种格式的文本输入、图片上传、表格操作、超链接管理等,极大地提升了用户在网页上的内容创作效率...
在本JAVA课程设计中,学生通过构建一个计算器与文本编辑器的应用程序,深入理解了Java编程语言的基础知识和GUI设计原则。这篇报告主要涵盖了计算器应用的实现过程,包括功能需求分析、设计思路、类划分以及具体实现...
地图编辑器可能包含工具箱、状态栏、菜单栏等元素,通过Windows Forms或WPF框架来构建。 9. **数据结构和算法**:为了高效地存储和操作地图数据,开发者可能需要使用合适的数据结构,如列表、数组、队列或树等,并...
cTrader指标: .algo格式 一款可以切换各个时间段的cTrader指标, 可以修改各种参数的时间周期切换指标;更改颜色、形状、大小、位置等......
cTrader指标: .algo格式【外汇指标】 一款可以切换各个时间段的cTrader指标, 可以新增或减少时间周期 可以隐藏、显示周期按钮 可以修改各种参数的时间周期切换指标;更改颜色、形状、大小、位置等......
该编辑器利用grafana的代码编辑器指令为用户提供代码编辑器功能,例如语法突出显示,错误检测,可折叠字段等。 双管:选中此选项会将地图上的邻接链接切换为双管模式。 每条线都有一个与之关联的方向箭
文本编辑器是一款基础的软件工具,常用于创建、查看、编辑和修改文本文件。在VB(Visual Basic)环境中,开发一款文本编辑器是一项常见的编程练习,可以帮助开发者熟悉基本的控件使用和事件处理。在这个项目中,我们...
A panel button indicator that integrates variety, cycle, and time You can add or reduce currency pairs yourself Various parameters can be modified; Change color, shape, size, position, etc
A panel button indicator that integrates variety, cycle, and time You can add or reduce currency pairs yourself Various parameters can be modified; Change color, shape, size, position, etc
【标题】:“admin-panel:管理面板模板html”指的是一个用于构建后台管理界面的HTML模板,主要服务于网站或应用的管理员,提供数据监控、用户管理、设置调整等多种功能的交互界面。 【描述】:“admin-panel:管理...
使用新的grafana-cli工具从命令行安装piechart-panel: grafana-cli plugins install grafana-piechart-panel 该插件将安装到您的Grafana插件目录中; 如果安装了Grafana软件包,则默认值为/ var / lib / grafana /...
8. **版本控制**:由于文件名为`Admin_Panel-master`,这可能表示它是从Git仓库中克隆的,可能包含`.git`目录,用于版本控制和协同编辑。 9. **文件结构**:解压后的文件通常会有HTML文件、CSS样式表(可能包括`...
### Python实现的文本编辑器功能知识点详解 #### 一、项目背景与介绍 在软件开发领域,特别是桌面应用开发中,文本编辑器是一项基础而重要的工具。文本编辑器不仅可以用于编写代码,还可以作为通用的文本处理工具...
1. **打开注册表编辑器**: - 在“开始”菜单中输入`regedit`并按Enter键。 2. **删除Oracle相关键值**: - 遍历以下注册表路径,并删除所有与Oracle相关的键值: - `HKEY_LOCAL_MACHINE\SOFTWARE\Oracle` - `...
pell-panel 是一个基于 JavaScript 的简单、轻量级的富文本编辑器库,它旨在提供一个易于集成、可自定义的解决方案,用于在网页上创建文本输入框。"东古酷"可能是这个项目的一个特色或者开发者的名字,但在描述中并...