SwapChainPanel.CreateCoreIndependentInputSource 方法

定义

重载

CreateCoreIndependentInputSource(InputPointerSourceDeviceKinds)

创建一个核心输入对象,该对象处理 deviceKinds 参数指定的输入类型。 此核心输入对象可以处理后台线程上的输入事件。

CreateCoreIndependentInputSource(CoreInputDeviceTypes)

创建一个核心输入对象,该对象处理 deviceTypes 参数指定的输入类型。 此核心输入对象可以处理后台线程上的输入事件。

CreateCoreIndependentInputSource(InputPointerSourceDeviceKinds)

创建一个核心输入对象,该对象处理 deviceKinds 参数指定的输入类型。 此核心输入对象可以处理后台线程上的输入事件。

public:
 virtual InputPointerSource ^ CreateCoreIndependentInputSource(InputPointerSourceDeviceKinds deviceKinds) = CreateCoreIndependentInputSource;
InputPointerSource CreateCoreIndependentInputSource(InputPointerSourceDeviceKinds const& deviceKinds);
public InputPointerSource CreateCoreIndependentInputSource(InputPointerSourceDeviceKinds deviceKinds);
function createCoreIndependentInputSource(deviceKinds)
Public Function CreateCoreIndependentInputSource (deviceKinds As InputPointerSourceDeviceKinds) As InputPointerSource

参数

deviceKinds
InputPointerSourceDeviceKinds

枚举的组合值。

返回

一个 对象,表示用于互操作目的的输入子系统,可用于输入事件连接点。

注解

此方法使包含 SwapChainPanel 的应用能够独立于 XAML UI 线程处理输入和呈现,因为你有意在后台线程上提供输入处理逻辑。 必须从非 UI 线程调用 CreateCoreIndependentInputSource,否则此方法将失败。

使用此方法创建核心输入对象,并将其与 SwapChainPanel 关联。 成功创建后,访问 SwapChainPanel 内容的指定设备类型的用户输入将被重定向到从中调用 CreateCoreIndependentInputSource 的线程。 应用可以通过注册输入事件并在后台线程上处理这些事件来处理此输入。 为了通过 CoreIndependentInputSource 对象接收输入消息,应用代码必须在 SwapChainPanel 上设置交换链,并在 Microsoft DirectX 级别呈现 (,) 此交换链至少呈现一次。 这提供了使命中测试成为可能的呈现。

通常使用 CoreDispatcher.ProcessEvents 作为事件处理的一部分。 从 CoreIndependentInputSource.Dispatcher 获取 CoreDispatcher 引用。 有关如何使用后台线程的详细信息,请参阅 ThreadPool线程和异步编程

可以多次调用此方法。 每次调用 CreateCoreIndependentInputSource 时,以前的 CoreIndependentInputSource 对象都会与 SwapChainPanel 取消关联。 换句话说,一次只能有一个 CoreIndependentInputSource 对象获取事件。

有关如何使用 CreateCoreIndependentInputSource 的示例代码,请参阅DrawingPanel作为 XAML SwapChainPanel DirectX 互操作示例一部分的类定义。

如果 deviceKinds 作为 InputPointerSourceDeviceKinds 传递,CreateCoreIndependentInputSource 可以返回 null。None (这不是调用 CreateCoreIndependentInputSource 的典型方法,但) 。

另请参阅

适用于

CreateCoreIndependentInputSource(CoreInputDeviceTypes)

创建一个核心输入对象,该对象处理 deviceTypes 参数指定的输入类型。 此核心输入对象可以处理后台线程上的输入事件。

public:
 virtual ExpIndependentPointerInputObserver ^ CreateCoreIndependentInputSource(CoreInputDeviceTypes deviceTypes) = CreateCoreIndependentInputSource;
ExpIndependentPointerInputObserver CreateCoreIndependentInputSource(CoreInputDeviceTypes const& deviceTypes);
public ExpIndependentPointerInputObserver CreateCoreIndependentInputSource(CoreInputDeviceTypes deviceTypes);
function createCoreIndependentInputSource(deviceTypes)
Public Function CreateCoreIndependentInputSource (deviceTypes As CoreInputDeviceTypes) As ExpIndependentPointerInputObserver

参数

deviceTypes
CoreInputDeviceTypes

枚举的组合值。

返回

表示用于互操作的输入子系统的 对象,可用于输入事件连接点。

注解

此方法使包含 SwapChainPanel 的应用能够独立于 XAML UI 线程处理输入和呈现,因为你有意在后台线程上提供输入处理逻辑。 必须从非 UI 线程调用 CreateCoreIndependentInputSource,否则此方法将失败。

使用此方法创建核心输入对象,并将其与 SwapChainPanel 关联。 成功创建后,访问 SwapChainPanel 内容的指定设备类型的用户输入将被重定向到从中调用 CreateCoreIndependentInputSource 的线程。 应用可以通过注册输入事件并在后台线程上处理这些事件来处理此输入。 为了通过 CoreIndependentInputSource 对象接收输入消息,应用代码必须在 SwapChainPanel 上设置交换链,并在 Microsoft DirectX 级别呈现 (,) 此交换链至少呈现一次。 这提供了使命中测试成为可能的呈现。

通常使用 CoreDispatcher.ProcessEvents 作为事件处理的一部分。 从 CoreIndependentInputSource.Dispatcher 获取 CoreDispatcher 引用。 有关如何使用后台线程的详细信息,请参阅 ThreadPool线程和异步编程

可以多次调用 CreateCoreIndependentInputSource。 每次调用 CreateCoreIndependentInputSource 时,以前的 CoreIndependentInputSource 对象都会与 SwapChainPanel 取消关联。 换句话说,一次只能有一个 CoreIndependentInputSource 对象获取事件。

有关如何使用 CreateCoreIndependentInputSource 的示例代码,请参阅DrawingPanel作为 XAML SwapChainPanel DirectX 互操作示例一部分的类定义。

如果 deviceTypes 作为 CoreInputDeviceTypes 传递,CreateCoreIndependentInputSource d 可以返回 null。None (这不是调用 CreateCoreIndependentInputSource 的典型方法,尽管) 。

另请参阅

适用于