当前位置: 首页 > 文档资料 > Java 函数速查 >

com.ms.wfc.app

优质
小牛编辑
118浏览
2023-12-01

这些类封装了Windows应用操作,包括线程,消息,以及访问剪贴板和注册表的操作。


Application

Application类提供了应用在应用程序中的典型静态方法。

CharacterSet

CharacterSet类封装了Font对象可用的不同的字符集。

Clipboard

Clipboard类封装了Win32系统剪贴板。

DataFormats

DataFormats类用于将WFC的基于字符格式(text-based)的剪贴板与Win32基于整体(integer-based)格式的剪贴板互相转换。

DataFormats.Format

DataFormats.Format类用于存储格式类型。

DataObject

DataObject类定义了基本数据传输对象。

Locale

Locale类封装了Win32场所标识符(Win32 Locale Identifier(LCID))。

Locale.CalendarType

Locale.CalendarType类提供了用来描述场所可用的不同的日程表的字段。

Locale.DateFormatOrder

Locale.DateFormatOrder类提供了用来指定各种各样定制数据的格式的字段。

Locale.Languages

Locale.Languages类提供了用来描述场所对象预定义语言的字段。

Locale.LeadingZeros

Locale.LeadingZeros类提供了用来给场所Locale类赋前置0值(leading zeros)或指定前置0值所需要的字段。

Locale.MeasurementSystem

Locale.MeasurementSystem类提供了用来决定场所度量系统(measurement system)所需要的字段。

Locale.NegativeNumberMode

Locale.NegativeNumberMode类提供了指定不同的负数表达方式的字段。

Locale.OptionalCalendarType

Locale.OptionalCalendarType类提供了指定可选日程表的字段。

Locale.PositiveCurrencyMode

Locale.PositiveCurrencyMode类提供了指定不同的正通用类型数据(currency)的表达方式的字段。

Locale.Sort

Locale.Sort类提供的字段指定了不同的排序IDs。

Locale.SubLanguages

Locale.SubLanguages类提供的字段指定了不同的子语IDs。

Message

Message类实现了Windows的消息机制。

Registry

Registry类提供了系统注册表根关键字中的一组常量。

RegistryKey

RegistryKey类提供了一组方法允许你读写系统注册表。

SendKeys

SendKeys类提供了一组方法用来将击键(key-stroke)时间传递到一个应用程序。

SpecialFolder

SpecialFolder类提供的字段可以代表一个特殊的系统文件夹。

SystemInformation

SystemInformation类提供了操作系统的相关信息。

SystemInformation.ArrangeDirection

SystemInformation.ArrangeDirection类提供了常量用来表示了操作系统最小化各个窗口的顺序。

SystemInformation.ArrangeStartingPosition

SystemInformation.ArrangeStartingPosition类定义了表示操作系统用来显示最小化窗口位置的常量。

ThreadExceptionDialog

ThreadExceptionDialog类实现了用来在线程出现不可控制的异常是弹出的对话框。

ThreadExceptionEvent

ThreadExceptionEvent类实现了ThreadExceptionEvent对象。

Time

Time类代表了时间元素。

Timer

Time类实现了计时器控件。

Version

Version类检取了场所操作系统的版本信息。

Window

Window类提供了对窗口句柄和窗口过程的底层封装。


界面

IDataObject

IDataObject界面提供了模板数据转换机制。

IMessageFilter

IMessageFilter界面定义了消息过滤界面。


代理

MethodInvoker

当事件发生时激活相应的处理方法。

ThreadExceptionEventhandler

当事件发生时激活相应的处理方法。


Application 类

Application类提供了应用在应用程序中的典型静态方法。

package com.ms.wfc.app

publilc final class Application

说明

不能生成这个类的实例,可以用这个类提供的静态方法运行,推出一个应用程序,启动或停止消息循环,接管(hook up)应用程序层事件。

方法

Application.addMessageFilter

给应用程序的消息泵(message pump)增加一个消息过滤器。

语法

public static void addMessageFilter(IMessageFilter value)

参数

value

消息过滤器,必须是一个实现了IMessageFilter界面的对象。

说明

消息过滤器允许一个应用程序监视Windows的消息并传送到正确的位置。对每个确定的线程来说消息过滤器是唯一的。你可以用消息过滤器在消息传递给事件处理方法之前处理它,以防止触发一个特定的对象,或执行一个特定的事件。

注意:给应用程序的消息泵增加消息过滤器会导致你的应用程序效率降低。

请参阅:removeMessageFilter

Application.addOnApplicationExit

给应用程序增加一个applicationExit事件处理器。

语法

public static void addOnApplicationExit(EventHandler value)

参数

value

当应用程序退出时,com.ms.wfc.core.EventHandler被调用。

说明

在应用程序退出时,application exit事件被触发。这给应用程序提供了一个机会,使之能够在应用程序退出前清除所有的不能被垃圾收集(garbage collection)机制释放的对象。不能够通过applicationExit事件处理方法阻止应用程序的关闭。想要阻止应用程序被关闭,你可以处理应用程序主框架中的closing事件。

请参阅:removeOnApplicationExit,addOnClosing,removeOnClosing

Application.addOnIdle

给应用程序增加idle事件处理方法。

语法

public static void addOnIdle(EventHandle value)

参数

value

处理idle事件的com.ms.wfc.core.EventHandler。

说明

每当应用程序的消息序列为空的时候,idle事件被触发。每个线程均可以定义一个idle事件处理方法。采用这种方式你可以在线程出于idle状态时执行后台操作和普通应用程序清理工作。

注意:因为除非idle事件处理方法返回,应用程序不能处理消息循环,所以请不要在这个方法内执行需要长事件才能完成的任务。

请参阅:removeOnIdle

Application.addOnSettingChange

给应用程序增加settingChange事件处理方法。

语法

public static void addOnSetting(EventHandler value)

参数

value

处理settingChange事件的com.ms.wfc.core.EvnetHandler对象。

说明

当用户改变一种或几种窗口设置时,settingChange事件就被触发了。Windows Java基础类库(WFC)内部可以处理这个事件,包括恰当地更新应用程序中正在应用的所有brush,pen,color和font对象。当用户系统设置被改变时,你可以用这个方法对你的应用程序作更多的修改。

请参阅:removeOnSettingChange

Application.addOnSystemShutdown

给应用程序增加systemShutdown事件处理方法。

语法

public static void addOnSystemShutdown(CnacelEventHandlervalue)

参数

value

在系统关机之前,com.ms.wfc.core.CancelEventHandle方法被调用。

说明

在用户从Windows系统退出登录或关闭系统之前,systemShutdown事件被触发。这个事件可以被忽略掉,从而导致关机请求被中止。典型情况下,这是应用程序在中止前接到的最后一个事件,作为回应,应用程序应该保存在这个事件发生时所有正在打开的文件。

请参阅:removeOnSystemShutdown

Application.addOnThreadException

给应用程序增加处理threadException事件的方法。

语法

public static void addOnThreadException(ThreadExceptinEventHandler value)

参数

value

处理threadException事件的ThreadExceptionEventHandler对象。

说明

当一个没有被捕获的Java异常被抛出的时候,threadException被触发。这个事件允许应用程序正确地处理异常,而不必突然中止这个应用程序。对每一个线程都可以定义一个threadException事件处理方法。

请参阅:removeOnThreadException

Application.allocThreadStorage

给每一个线程存储槽(per-thread slot)分配内存空间,并返回相应的索引。

语法

public static int allocThreadStorage()

返回值

返回每个新分配的线程存储位置的索引。

说明

应用程序中的每一个线程可以分配一段内存空间用来存储这个线程具体的数据。这段线程存储槽可以用来定义并存储这个线程的全局变量或其他的重要信息。AllocThreadStorage返回的索引值永远大于0。

下列例子示范了如何用allocThreadStorage,setThreadStorage,freeThreadStorage和getThreadStorage方法分配、存储、检取、释放线程存储槽。

int storeIndex;
public void createStorage(){
    //Create thread storage for the current thread
    storeIndex = Application.allocThreadStorage();
    //Store a value in the thread storage
    Aplication.setThreadStorage(storeIndex,"A String Value");
}
public void getStorage(){
    System.out.println("The value of the thread storage="+ Application.getThreadStorage(storeIndex));
    Application.freeThreadStorage(storeIndex);
}

Application.createThread

在本线程内异步地执行指定的代理(delegate)。

语法

public static Thread createThread(Delegate callback)
public static Thread createThread(Delegate callback, int priority)

参数

callback

作为线程调用入口的代理。

Priority

线程优先级。

返回值

返回一个代表新线程的Thread对象。

说明

调用createThread方法可以在不实现java.lang.Runnable界面或不继承java.lang.Thread类的情况下实现多线程机制,该方法的第二种格式允许你定义新线程的优先级,你可以把任意代理(delegate)传递给createThread方法或用MethodInvoker类去调用不包含参数的方法。

下列例子描述了如何用createThread方法在应用程序中启动一个新的线程。

public class MyForm extends Form{
  public Myform(){
     initForm();
     //Start the thread that counts to 2000
     Application.createThread(new MethodInvoker(MyThread),
  Thread.NORM_PRIORITY);
  }
  /**This thread runs concurrently with form loading and counts to 2000*/
  private void  MyThread{
      for(int i=0; i<=2000; i++){
        System.out.println(揟he value is currently equal to ?+ i );
      }
  }
  //More From Code Here
}

Application.doEvents

处理当前处于消息序列中的Windows消息。

语法

public static void doEvents()
public static void doEvents(int message)
public static void doEvents(int messageStart, int messageEnd)

参数

message

将要处理的消息。

messageStart

将要处理的消息的开始范围。

messageEnd

将要处理的消息的结束范围。

说明

警告:调用doEvents方法处理为paint事件定义的或用createGraphics方法生成的Graphics对象。

DoEvents方法允许执行未执行的Windows消息。这个方法的典型用法是在循环过程中处理消息。调用第一种格式的doEvents重载方法会导致所有的消息被执行。调用第二种格式的doEvents方法只执行相

应类型的消息,这个格式允许你只想处理单一的消息(例如WM_PAINT)而想让其他的消息继续处于等待状态。第三种格式的doEvents方法则允许你处理一部分消息,这些消息从messageStart开始,至messageEnd结束,这将允许你处理在一个范围内的所有消息,如在WM_MOUSEFIRST到WM_MOUSELAST之间的消息。

注意:调用这个方法的时候,你必须非常小心,因为如果消息触发了一个事件,则会引起代码重入的问题。

Application.exit

退出应用程序所有线程的消息循环。

语法

public static synchronized void exit()

说明

exit方法关闭应用程序中所有的窗口,关闭所有线程的的消息循环。如果你只想从当前线程的消息循环中退出的话,你应该采用exitThread方法。由于应用程序的线程是在主框架的main方法中启动的,所以调用exit方法不是强迫应用程序退出,而仅仅是导致所有调用run方法立

即返回。如果你的main方法在调用run方法后还有其他代码,他们将被继续执行。

Application.exitThread

关闭当前线程的所有窗口并中止该进程的消息循环。

语法

public static void exitThread()

说明

exitThread方法允许你中止指定的线程的消息循环并关闭在这个线程中打开的所有窗口。如果你想要退出应用程序并关闭由这个线程打开的其他所有线程,请调用exit方法。

请参阅:exit, run

Application.freeThreadStorage

释放指定线程的存储槽(storage slot)。

语法

public static void freeThreadStorage(int index)

参数

index

指定线程存储槽的索引值,这个值必须是早先调用allocThreadStorage方法所获得的返回值。

说明

freeThreadStorage方法允许你释放掉线程的存储槽。如果一个当前正在使用的对象正存储在这里,存储槽将被在释放前设置成null。有关这个方法的例子,请参阅allocThreadStorage。

请参阅:getThreadStorage, setThreadStorage

Application.getActiveForm

检取应用程序当前活动窗口的引用。

语法

public static Form getActiveForm()

返回值

如果存在一个激活的窗口,则返回一个Form引用,否则返回null。

说明

使用getActiveForm方法,你可以获得当前活动的窗口,并对其或其中的控件执行相应操作。如果你写的是一个多文档界面(MDI)的应用程序,并且想要获得当前激活的子窗口,那么请用Form.getActiveMDIChild方法,反过来,想要访问MDI子窗口的父窗口,请用getMDIParent方法。

Application.getCurrentLocale

检取描述当前线程的场所设置的locale对象。

语法

public static Locale getCurrentLocale()

返回值

返回当前线程的场所设置的locale对象。

说明

应用getCurrentLocale方法,你可以检取描述当前线程的场所设置的locale对象。你可以用这个方法决定在你的应用程序中采用何种语言,何种货币,何种时间系统等这些定义在用户控制面板中的设置。

请参阅:setCurrentLocale

Application.getStartupPath

检取启动此应用程序的执行文件的绝对路径。

语法

public static String getStartupPath()

返回值

返回一个String对象,这个对象包含了启动应用程序的执行文件的完整路径。

说明

getStartupPath方法所返回的字符串根据启动这个应用程序的方式不同而不同,如果你在Visual J++中启动你的应用程序,getStartupPath所返回的路径将是用来在Visual J++内启动你的应用程序的WJView.exe或JView.exe文件的位置,如果你用.exe文件启动你的应用程序,那么这个方法将返回那个.exe文件的路径。

Application.getThreadStorage

检取存储在指定线程的存储槽中的对象。

语法

public static Object getThreadStorage(int index)

参数

index

index是指定线程的存储槽的索引值。这个索引值必须是早先调用allocThreadStorage方法获得的返回值。

返回值

返回调用者早先存储在存储槽中的对象。如果没有对象存储在存储槽中,返回null。

说明

为了从指定线程存储槽中检取对象,你必须知道这个存储槽的有效索引值。这个索引值是通过早先调用allocThreadStorage方法获得的。当从存储槽获取信息的时候,你必须保证你用正确的类型调用getThreadStorage方法,要在指定线程的存储槽中存储信息,你可以调用setThreadStorage方法,例子请参阅allocThreadStorage方法中的例子。

请参阅:freeThreadStorage

Application.OLERequired

在你的应用程序中初始化OLE。

语法

public static void OLERequired()

说明

OLERequired方法用来检测当前线程是否初始化了OLE,应用程序在线程退出时自动删除OLE设置。

注意:除非你要直接用OLE功能,否则你没有必要调用这个方法。

Application.removeMessageFilter

删除早先通过addMessageFilter方法加入的消息过滤器。

语法

public static void removeMessageFilter(IMessageFilter value)

参数

value

你想要从消息泵中删除的消息过滤器,是一个实现了ImessageFilter界面的对象。

说明

消息过滤器允许一个应用程序监视Windows的消息并传送到正确的位置。对每个确定的线程来说消息过滤器是唯一的。你可以用消息过滤器在消息传递给事件处理方法之前处理它,以防止触发一个特定的对象,或执行一个特定的事件。

请参阅:addMessageFilter

Application.removeOnApplicationExit

删除早先调用addOnApplicationExit方法加入的applicationExit事件处理器。

语法

public static void removeOnApplicationExit(EventHandler value)

参数

value

要删除的com.ms.wfc.core.EventHandler代表。

说明

在应用程序退出时,application exit事件被触发。这给应用程序提供了一个机会,使之能够在应用程序退出前删除所有的不能被垃圾收集(garbage collection)机制释放的对象。不能够通过applicationExit事件处理方法阻止应用程序的关闭。想要阻止应用程序被关闭,你可以处理应用程序主框架中的closing事件。

请参阅:addOnApplicationExit

Application.removeOnIdle

删除早先通过调用addOnIdle方法加入的Idle事件处理器。

语法

public static void removeOnIdle(EventHandler value)

参数

value

要删除的com.ms.wfc.core.EventHandler代表。

说明

每当应用程序的消息序列为空的时候,idle事件被触发。每个线程均可以定义一个idle事件处理方法。采用这种方式你可以在线程出于idle状态时执行后台操作和普通应用程序清理工作。

注意:因为除非idle事件处理方法返回,应用程序不能处理消息循环,所以请不要在这个方法内执行需要长事件才能完成的任务。

请参阅:addOnIdle

Application.removeOnSettingChange

删除早先调用addSettingCahngeHandler方法加入的settingChange事件处理器。

语法

public static void removeOnSettingChange(EventHandler value)

参数

value

要删除的com.ms.wfc.core.EventHandler代表。

说明当用户改变一种或几种窗口设置时,settingChange事件就被触发了。Windows Java基础类库(WFC)内部可以处理这个事件,包括恰当地更新应用程序中正在应用的所有brush,pen,color和font对象。当用户系统设置被改变时,你可以用这个方法对你的应用程序作更多的修改。

请参阅:addOnSettingChange

Application.removeOnSystemShutdown

删除早先调用addOnSystemShutdown方法加入的systemShutdown事件处理器。

语法

public static void removeOnSystemShutdown(CancelEventHandler

value)

参数

value

要删除的com.ms.wfc.core. CancelEventHandler代表。

说明

在用户从Windows系统退出登录或关闭系统之前,systemShutdown事件被触发。这个事件可以被忽略掉,从而导致关机请求被中止。典型情况下,这是应用程序在中止前接到的最后一个事件,作为回应,应用程序应该保存在这个事件发生时所有正在打开的文件。

Application.removeOnThreadException

删除早先调用addOnThreadException方法加入的threadException事件处理器。

语法

public static void removeOnThreadException(ThreadExceptionEventHandler value)

参数

value

要删除的ThreadExceptionEventHandler。

说明

当一个没有被捕获的Java异常被抛出的时候,threadException被触发。这个事件允许应用程序正确地处理异常,而不必突然中止这个应用程序。对每一个线程都可以定义一个threadException事件处理方法。

请参阅:addOnThreadException

Application.run

开始运行一个标准的应用程序并在当前线程中启动消息循环。

语法

public static void run()

public static void run(Form mainForm)

参数

mainForm

描述应用程序开始运行时的主框架的Form对象。如果这个值是null的话,那么调用这个格式的run方法和调用不带任何确定参数的run方法是一样的。

说明

如果在调用run方法的时候指定了Form对象,那么这个框架的visible属性将被自动设置成true,同时一个closing事件处理器被加到此框架上。Closing事件处理器替你调用exit方法,作清理应用程序的工作。如果你没有给这个方法传递一个作为参数form对象,那么消息循环将一直运行下去,直到exit方法或exitThread方法被调用。典型情况下,应用程序的main方法以应用程序的主窗口作为参数调用run方法。

Application.setCurrentLocale

设置当前线程的场所(locale)。

语法

public static void setCurrentLocale(Locale locale)

参数

locale

一个描述当前线程的新场所的Locale对象。

说明

想要改变当前线程的场所信息,你可以用setCurrentLocale方法并同时提供一个Locale对象。场所信息允许一个线程决定在应用程序中采用何种语言、货币单位、时间系统等等。想要获取一个线程的场所信息,你可以调用getCurrentLocale方法。

Application.setThreadStorage

在一个指定的线程的存储槽中设置一个对象。

语法

public static void setThreadStorage(int index, Object object)

参数

index

线程存储槽的索引值,这个索引值必须是先前通过调用allocThreadStorage方法获得的。

Object

需要存储的对象。当此值为null的时候,调用此方法将会清除当前存储在指定存储槽中的对象。

说明

你可以调用setThreadStorage方法存储线程的特定信息,像全局对象或全局变量等那些线程必须的东西。要从线程的存储槽中检取这些信息,你必须预先用allocThreadStorage方法分配一个存储槽,并得到它的索引值,关于此方法的应用例子,请参阅allocThreadStorage方法。

请参阅:freeThreadStorage, getThreadStorage


CharacterSet 类

封装了font对象可以使用的不同的字符集。

Enum
  | 
  +--CharacterSet

package com.ms.wfc.app

public class Character

Setextends Enum

说明

CharacterSet类提供了一系列的枚举值,Font对象采用这些枚举值定义字符集。

字段

CharacterSet.ANSI

指定Windows标准字符集,American National Standards Institute(ANSI)字符集。

语法

public static final int ANSI;

CharacterSet.ARABIC

指定Arabic字符集。

语法

public static final int ARABIC;

CharacterSet.BALTIC

指定Baltic字符集。

语法

public static final int BALTIC;

CharacterSet. CHINESEBIG5

指定CHINESEBIG5字符集。

语法

public static final int CHINESEBIG5;

CharacterSet.DEFAULT

指定DEFAULT字符集。

语法

public static final int DEFAULT;

CharacterSet.EASTEUROPE

指定EASTEUROPE字符集。

语法

public static final int EASTEUROPE;

CharacterSet.GB2312

指定GB2312字符集。

语法

public static final int GB2312;

CharacterSet.GREEK

指定GREEK字符集。

语法

public static final int GREEK;

CharacterSet.HANGEUL

指定HANGEUL字符集。

语法

public static final int HANGEUL;

CharacterSet.HEBREW

指定HEBREW字符集。

语法

public static final int HEBREW;

CharacterSet.JOHAB

指定JOHAB字符集。

语法

public static final int JOHAB;

CharacterSet.MAC

指定MAC字符集。

语法

public static final int MAC;

CharacterSet.OEM

指定OEM字符集。

语法

public static final int OEM;

说明在大多数计算机中,这个字符集预先内置只读存储器(ROM)中。

CharacterSet.RUSSIAN

指定RUSSIAN字符集。

语法

public static final int RUSSIAN;

CharacterSet.SHIFTJIS

指定SHIFTJIS字符集。

语法

public static final int SHIFTJIS

CharacterSet.SYMBOL

指定SYMBOL字符集。

语法

public static final int SYMBOL;

说明

这个字符集包含了在文本文件中常用的符号。

CharacterSet.THAI

指定THAI字符集。

语法

public static final int THAI

CharacterSet.TURKISH

指定TURKISH字符集。

语法

public static final int TURKISH;

CharacterSet.VIETNAMESE

指定VIETNAMESE字符集。

语法

public static final int VIETNAMESE;

方法

CharacterSet.valid

确定传递给此方法的参数是否是有效的类枚举值。

语法

public static boolean valid(int value)

参数

value

被确定的枚举值。

说明

valid方法用来确定将要使用的枚举值是否在类枚举成员的范围内。如果一个方法的返回值是这个类的有效枚举值。


Clipboard类

封装了Win32系统剪贴板。

package com.ms.wfc.app

public final class Clipboard

说明

Clipboard类提供了一组静态方法,你可以用这些方法在Windows系统剪贴板中设置,或检取数据。不能实例化一个Clipboard类的实例。

方法

Clipboard.getDataObject

检取当前系统剪贴板中的数据。

语法

public static IDataObject getDataObject()

返回值

返回一个实现了IDataObject类的对象,这个对象包含了从系统剪贴板中检取的数据。

说明

因为从系统剪贴板中返回的数据的类型是不定的,所以你必须用一个IDataObject类的对象来存储从系统剪贴板中检取的数据。你可以用IDataObject类提供的方法将数据转换成正确的类型。

下面的代码描述了如何用getDataObject方法检取当前系统剪贴板中的数据。这个例子也附带说明了如何利用IDataObject类提供的方法来将IDataObject中的数据赋值给一个Edit控件。

private void mnuPaste_click ( Object sender, Event e ){
    IDataObject d = Clipboard.getDataObject ( );
    if ( d . isDataPresent ( String . class ) {
      edit1.setText ( ( String ) d . getData ( String . class ) );
    }
}

请参阅:DataObject, setDataObject

Clipboard.SetDataObject

向系统剪贴板中发送数据。

语法

public static void setDataObject(Object data)
public static void setDataObject(Object data, boolean copy)

参数

data

将要放到系统剪贴板中的数据。

Copy

这个boolean值决定以何种方式将数据发送到系统剪贴板中。有两种方式:生成一份新的拷贝或是传递一个引用。

说明

SetDataObject方法允许你给系统剪贴板赋值,如果调用了此方法的的第二种格式,并且参数copy的值设置为true,系统将生成一份将要传入系统剪贴板的数据的拷贝,并放在系统剪贴板中,即便此应用程序退出了,系统剪贴板中的数据依然存在。反之如果copy的值设置为false,则将数据的引用放入系统剪贴板。

下面的例子描述了如何用setDataObject方法将框架中一个Edit控件中的选定文本写入系统剪贴板中。

private void mnuCopy_click ( object sender, Event e ){
    // Send the currently selected text to the Clipboard
      Clipboard . setDataObject ( edit1 . getText ( ) );
}

请参阅:IdataObject, DataObject, getDataObject


DataFormats类

DataFormats类用于将WFC的基于字符格式(text-based)的剪贴板与

Win32基于整体(integer-based)格式的剪贴板互相转换。

package com.ms.wfc.app

public class DataFormats

说明

用DataFormats类中的枚举值决定当前在系统剪贴板中的数据的类型。WFC把很多剪贴板类型的数据转换成有效的Java和WFC对象。

字段

DataFormats.CF_BITMAP

指定Windows位图格式。

语法

public static final String CF_BITMAP;

说明

在WFC中,你可以使用Bitmap类,WFC替你自动执行向Win32位图剪贴板格式的转换。

DataFormats.CF_CSV

指定CSV(comma-separated value)格式。

语法

public static final String CF_CSV;

说明

CSV是应用程序,像电子表格软件的通用的交换格式。WFC不能直接使用CSV格式。

DataFormats.CF_DIB

指定Windows的与设备无关位图(DIB)格式。

语法

public static final String CF_DIB;

说明

如果你把一个Bitmap对象分配到剪贴板中,WFC替你自动执行向Win32位图剪贴板格式的转换。

DataFormats.CF_DIF

指定Windows数据交换格式。

语法

public static final String CF_DIF;

说明WFC没有直接使用这种格式。

DataFormats.CF_ENHMETAFILE

指定Windows增强图元交换文件的格式。

语法

public static final String CF_ENHMETAFILE;

说明

如果你要把一个Metafile对象分配到剪贴板,WFC替你自动执行向Win32增强图元交换文件剪贴板格式的转换。

DataFormats.CF_HDROP

指定Windows文件放下(file drop)格式。

语法

public static final String CF_HDROP

说明

WFC没有直接使用这种格式。但是,你可以在拖放操作中使用它,从而与Windows初始化的拖操作实现交互操作。

DataFormats.CF_HTML

指定HTML(Hypertext Markup Language)数据组成的文本。

语法

public static final String CF_HTML;

说明

用HTML格式确定HTML字符串数据或其他类型的数据是否在系统剪贴板上。DataFormats.CF_LOCALE

指定Windows场所格式。

语法

public static final String CF_LOCALE;

说明

WFC没有直接使用这种格式。

DataFormats.CF_METAFILEPICT

指定Windows图元文件格式。

语法

public static final String CF_METAFILEPICT;

说明

WFC没有直接使用这种格式。

DataFormats.CF_OEMTEXT

指明标准的Windows OEM文本格式。

语法

public static final String CF_OEMTEXT;

说明

在WFC中,你可以在字符串对象中使用它。WFC替你自动执行向Win32 OEM文本剪贴板格式的转换。

DataFormats.CF_PALETTE

指定Windows调色板格式。

语法

public static final String CF_PALETTE

说明

WFC没有直接使用这种调色板格式。但是,你可以在Bitmap对象中使用它。

DataFormats.CF_PENDATA

指定Windows画笔数据格式。

语法

public static final String CF_PENDATA;

说明

这个格式由手写软件需要的笔划组成。WFC没有直接应用它。

DataFormats.CF_RIFF

指定Windows资源交换文件(RIFF)的声音格式。

语法

public static final String CF_RIFF;

说明

WFC没有直接使用这种RIFF格式。

DataFormats.CF_RTFTEXT

指定包含微软RTF(rich text format)格式数据的文本。

语法

public static final String CF_RTFTEXT;

说明

你可以利用RTF检取剪贴板中的RTF数据,典型情况下,你可以用这种格式检取你想要填充到RichEdit控件中的RTF数据。

DataFormats.CF_STRINGCLASS

指定标准java.lang.String类格式。

语法

public static final String CF_STRINGCLASS;

说明

这个格式被WFC用来存储String对象。用这种格式可以从剪贴板检取数据,给String对象或以String对象为属性的字段赋值。

DataFormats.CF_SYLK

指定Windows符号链接格式。

语法

public static final String CF_SYLK

说明

WFC没有直接使用这种格式。

DataFormats.CF_TEXT

指定ANSI文本格式。

语法

public static final String CF_TEXT;

说明

如果你把String对象分配到剪贴板中,WFC替你自动执行向Win32文本剪贴板格式的转换。

DataFormats.CF_TIFF

指定Tagged图像文件格式(TIFF)。

语法

public static final String CF_TIFF;

说明

WFC没有直接使用这种格式。

DataFormats.CF_UNICODETEXT

指定标准Windows Unicode文本格式。

语法

public static final String CF_UNICODETEXT;

说明

在WFC中,你可以使用String对象,WFC替你自动执行向Win32Unicode剪贴板格式的转换。

DataFormats.CF_WAVE

指定wave声音格式。

语法

public static final String CF_WAVE;

说明

WFC没有直接使用这种格式。

DataFormats.CF_WFCOBJECT

指定封装WFC对象的格式。

语法

public static final String CF_WFCOBJECT;

说明

可以在这里存储任何对象。

方法

DataFormats.getFormat

检取与特定format相关的DataFormats.Format对象。

语法

public static Format getFormat(String format)

public static Format getFormat(int id)

参数

format

字符串格式类型。

Id

Windows剪贴板格式ID。

返回值

返回一个DataFormats.Format对象。如果指定的格式是新的。此方

法生成一个新的格式并返回之。


DataFormats.Formats类

存储格式类型。

package com.ms.wfc.app

public static class DataFormats.Format

说明

Format是定义剪贴板格式的String/ID对,除去String对象和ID对外,还有一个标志位表明此格式是否期望用Win32句柄代替HGLOBAL。

请参阅:DataFormats, IDataObject, DataObject

字段

DataFormats.Format.id

指定Format对象的标识符。

语法

public final int id;

说明

这个id字段等同于Win32的剪贴板格式ID。

DataFormats.Format.name

指定格式的名字。

语法

public final String name;

DataFormats.Format.win32Handle

指定一个boolean值,此值决定这个格式是否期望Win32句柄。

语法

public final boolean win32Handle;

构造器

DataFormats.Format.Format

生成一个Format对象。

语法

public Format(String n, int i );

public Format(String n, int i, boolean fHandle);

参数

n

一个String对象,代表格式的名字。

I

一个整数值,代表格式的ID。

Fhandle

一个boolean值,决定这个格式是否期望Win32句柄。


DataObject类

定义基本数据传输对象。

Package com.ms.wfc.app

Public class DataObject

Implements IDataObject, IoleDataObject

说明

DataObject类使用任意实现了IDataObject界面的对象并提供了IOleDataObject界面的实现。DataObject类也可以使用任意实现了

IOleDataObject界面的对象,并同时提供IDataObject和IOleDataObject界面。典型情况下,DataObject类用来从剪贴板或拖放操作中获取数据或向其中存储数据。

构造器

DataObject.DataObject

生成一个DataObject对象。

语法

public DataObject()

public DataObject(IDataObject data)

public DataObject(IOleDataObject data)

public DataObject(Object data)

public DataObject(String format, Object data);

参数

data

一个用来代表被包含(wrap)对象的对象,此被包含的对象可以是IOleDataObject对象,IDataObject对象或Data对象的引用。

Format

一个代表数据存储格式的String对象。

说明

DataObject提供了四个生成DataObject对象的构造方法。第一种格式生成的对象可以存储任意格式的数据,第二种和第三种格式生成的DataObject对象包含了一个当作参数传递过来的界面对象。第四种方法将传递给构造器的对象组合为IOleDataObject对象或IDataObject对象。或者在DataObject对象中保存对象的引用。第五种方法以format参数指定的格式来保存data参数中的数据。

方法

DataObject.getData

检取与指定数据格式相关的数据。

语法

public Object getData( String format);

public Object getData( Class format );

参数

format

一个String对象或一个类用来代表要检取的数据的格式。

返回值

返回一个代表了与指定对象格式相关的数据的对象。

说明

用getData方法可以检取存储在Data对象中的数据。你可以定义数据存储的格式,此格式既可以是定义数据类型的String对象,也可以是数据格式的类。你可以用DataFormats类的字段定义恰当的数据格式。在决定使用何种数据格式调用此方法前,请使用getDataPresent方法。

下列代码描述了如何使用getData方法获取当前剪贴板中存储的数据。这个例子同时还描述了如何使用DataObject界面的方法以DataObject的数据给Edit控件赋值。

private void mnuPaste_click ( object sender, Event e ) 
{
    DataObject d = Clipboard.getDataObject ();
    if (d.isDataPresent (String.class ) {
      edit1.setText (( String ) d.getData ( String . class ) );
    }
}

请参阅:IDataObject, setData

DataObject.getDataPresent

确定数据对象中是否存储了指定的格式的数据。

语法

public boolean getDataPresnet ( Class format );

public boolean getDataPresent ( String format );

参数

format

代表将要被检测的数据的格式的String对象或类

返回值

如果存储在Data对象中的数据的类型与指定的format的类型相符,返回true,否则,返回false。

说明

使用getDataPresent方法来判断当前存储在Data对象中的数据的类型。你可以用这个方法在从Data对象中检取数据前确保要检取的数据的数据格式是正确的。

请参阅:IDataObject, getData

DataObject.getFormats

检取Data对象中存储的数据所支持的所有数据格式类型的数组。

语法

public String [ ] getFromats ();

返回值

返回一个String对象的数组,此数组描述了Data对象中存储的数

据所支持的所有格式的列表。

说明

此方法可以帮助你调试你的程序,DataFormats类中的字段可以用来定义要获取的数据的格式。

请参阅:IdataObject

DataObject.setData

设置存储在Data对象中的数据。

语法

public void setData ( String format, Object data );
public void setData ( Class format, Object data );
public void setData ( Object data );

参数

format

代表将要存储的数据的格式的String对象或类。

Data

代表将要存储的数据的对象。

说明

用此方法的第一种或第二种格式去定义将要存储在Data对象中的数据的格式,用此方法的第三种格式在不提供格式信息的情况下分配存储对象。DataFormats类中的字段可以用来定义要存储的数据的格式。

请参阅:IDataObject, getData