`
xiang37
  • 浏览: 426793 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

htmlPanel:oracle Forms的文本编辑器

 
阅读更多

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 绘制多行文本:自动换行:文本c# winform 绘制...

    Winform制作的文本编辑器

    在文本编辑器中,可能使用了Panel或者SplitContainer控件来组织和分隔界面。 2. **事件处理**:文本编辑器会响应用户的键盘和鼠标操作,比如点击、双击、拖动等。这需要为控件添加事件处理器,例如KeyDown、KeyUp、...

    Java编写的文本编辑器.doc

    Java编写的文本编辑器是一种基于Java Swing库的应用程序,用于创建和编辑文本文件。这个文本编辑器具有类似于Windows记事本的基本功能,如文本输入、保存、打开等,并且可以通过键盘快捷键进行操作。以下是对Java...

    JS 插件NicEdit富文本编辑器特效源码.zip

    《JS插件NicEdit富文本编辑器特效源码解析与应用》 在Web开发中,富文本编辑器是不可或缺的一部分,它为用户提供了类似于桌面文字处理软件的编辑体验。NicEdit是一款轻量级且功能丰富的JavaScript插件,适用于快速...

    xhEditor文本编辑器在asp.net中的应用

    xhEditor是一款功能丰富的网页文本编辑器,常用于ASP.NET应用程序中,为用户提供类似Word的富文本编辑体验。它支持多种格式的文本输入、图片上传、表格操作、超链接管理等,极大地提升了用户在网页上的内容创作效率...

    JAVA课程设计报告-心得体会——计算器、文本编辑器.pdf

    在本JAVA课程设计中,学生通过构建一个计算器与文本编辑器的应用程序,深入理解了Java编程语言的基础知识和GUI设计原则。这篇报告主要涵盖了计算器应用的实现过程,包括功能需求分析、设计思路、类划分以及具体实现...

    简单的C#AGV地图编辑器

    地图编辑器可能包含工具箱、状态栏、菜单栏等元素,通过Windows Forms或WPF框架来构建。 9. **数据结构和算法**:为了高效地存储和操作地图数据,开发者可能需要使用合适的数据结构,如列表、数组、队列或树等,并...

    Period switching panel:周期切换面板

    cTrader指标: .algo格式 一款可以切换各个时间段的cTrader指标, 可以修改各种参数的时间周期切换指标;更改颜色、形状、大小、位置等......

    Period control panel:周期控制面板

    cTrader指标: .algo格式【外汇指标】 一款可以切换各个时间段的cTrader指标, 可以新增或减少时间周期 可以隐藏、显示周期按钮 可以修改各种参数的时间周期切换指标;更改颜色、形状、大小、位置等......

    globalnoc-networkmap-panel:Grafana的网络地图面板

    该编辑器利用grafana的代码编辑器指令为用户提供代码编辑器功能,例如语法突出显示,错误检测,可折叠字段等。 双管:选中此选项会将地图上的邻接链接切换为双管模式。 每条线都有一个与之关联的方向箭

    文本编辑器

    文本编辑器是一款基础的软件工具,常用于创建、查看、编辑和修改文本文件。在VB(Visual Basic)环境中,开发一款文本编辑器是一项常见的编程练习,可以帮助开发者熟悉基本的控件使用和事件处理。在这个项目中,我们...

    cTrader指标:Variety Period clock control panel:品种周期时钟控制面板

    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

    cTrader指标:Variety Period time switching panel:品种周期时间切换面板

    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

    【标题】:“admin-panel:管理面板模板html”指的是一个用于构建后台管理界面的HTML模板,主要服务于网站或应用的管理员,提供数据监控、用户管理、设置调整等多种功能的交互界面。 【描述】:“admin-panel:管理...

    piechart-panel:饼图面板插件

    使用新的grafana-cli工具从命令行安装piechart-panel: grafana-cli plugins install grafana-piechart-panel 该插件将安装到您的Grafana插件目录中; 如果安装了Grafana软件包,则默认值为/ var / lib / grafana /...

    Admin_Panel:这是bootstrap的模板管理面板

    8. **版本控制**:由于文件名为`Admin_Panel-master`,这可能表示它是从Git仓库中克隆的,可能包含`.git`目录,用于版本控制和协同编辑。 9. **文件结构**:解压后的文件通常会有HTML文件、CSS样式表(可能包括`...

    Python实现的文本编辑器功能示例

    ### Python实现的文本编辑器功能知识点详解 #### 一、项目背景与介绍 在软件开发领域,特别是桌面应用开发中,文本编辑器是一项基础而重要的工具。文本编辑器不仅可以用于编写代码,还可以作为通用的文本处理工具...

    window 完全卸载oracle手册

    1. **打开注册表编辑器**: - 在“开始”菜单中输入`regedit`并按Enter键。 2. **删除Oracle相关键值**: - 遍历以下注册表路径,并删除所有与Oracle相关的键值: - `HKEY_LOCAL_MACHINE\SOFTWARE\Oracle` - `...

    pell-panel:东古酷

    pell-panel 是一个基于 JavaScript 的简单、轻量级的富文本编辑器库,它旨在提供一个易于集成、可自定义的解决方案,用于在网页上创建文本输入框。"东古酷"可能是这个项目的一个特色或者开发者的名字,但在描述中并...

Global site tag (gtag.js) - Google Analytics