当前位置:七道奇文章资讯编程技术Java编程
日期:2011-01-26 02:54:00  来源:本站整理

在SWT中操纵OLE操作Excel(五)[Java编程]

赞助商链接



  本文“在SWT中操纵OLE操作Excel(五)[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

    设置单元格的字体魄局

    设置字体魄局是常见的需求

package com.jrkui.example.excel;

 

import org.eclipse.swt.SWT;

import org.eclipse.swt.layout.FillLayout;

import org.eclipse.swt.ole.win32.OLE;

import org.eclipse.swt.ole.win32.OleAutomation;

import org.eclipse.swt.ole.win32.OleClientSite;

import org.eclipse.swt.ole.win32.OleFrame;

import org.eclipse.swt.ole.win32.Variant;

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Shell;

 

public class FontStyleShell {

   public static void main(String[] args) {

      new FontStyleShell().open();

   }

  

   public void open()

   {

      Display display = Display.getDefault();

      Shell shell = new Shell();

      shell.setText("Font Style");

      shell.setSize(400, 300);

      shell.setLayout(new FillLayout());

     

      createExcelPart(shell);

     

      shell.open();

      while(!shell.isDisposed())

          if(!display.readAndDispatch())

             display.sleep();

      display.dispose();

   }

 

   private static final int SHEET_ID = 0x000001e5;

  

   private static final int CELL_ID =  0x000000c5;

  

   private static final int CELL_VALUE_ID = 0x00000006;

  

   private void createExcelPart(Shell shell)

   {

      OleFrame frame = new OleFrame(shell,SWT.NONE);

      OleClientSite clientSite = new OleClientSite(frame,SWT.NONE,"Excel.Sheet");

      clientSite.doVerb(OLE.OLEIVERB_SHOW);

     

      OleAutomation workbook = new OleAutomation(clientSite);

      OleAutomation worksheet = workbook.getProperty(SHEET_ID,new Variant[]{new Variant(1)}).getAutomation();

      OleAutomation cellA3 = worksheet.getProperty(CELL_ID,new Variant[]{new Variant("A3")}).getAutomation();

      cellA3.setProperty(CELL_VALUE_ID, new Variant("Hello OLE!"));

     

      setFontStyle(cellA3);

   }

  

   private static final int FONT_SIZE           = 0x00000068;

  

   private static final int FONT_NAME           = 0x0000006e;

  

   private static final int COLOR_INDEX         = 0x00000061;

  

   private static final int FONT                = 0x00000092;

  

   private static final int BOLD                = 0x00000060;

  

   private static final int RED                 = 3;

  

   private void setFontStyle(OleAutomation cell)

   {

      OleAutomation font = cell.getProperty(FONT).getAutomation();//得到单元格的font对象

     

      font.setProperty(FONT_SIZE, new Variant(32));//大小

      font.setProperty(FONT_NAME, new Variant("Arial Black"));//利用Arial Black的字体

      font.setProperty(BOLD, new Variant(true));//粗体

      font.setProperty(COLOR_INDEX, new Variant(RED));//颜色

   }

}

    运行效果:

    <!--[if !vml]-->
    <!--[endif]-->

    对比简单,我就不举行注释了


  以上是“在SWT中操纵OLE操作Excel(五)[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Java秘史:躲藏在SWT/Swing背后的故事
  • 在SWT中操纵OLE操作Excel(五)
  • 在SWT中操纵OLE操作Excel(四)
  • <b>在SWT中操纵OLE操作Excel(三)</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .