鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > .net技术 > WinRT/Metro > >

输入: 获取输入设备信息, 虚拟键盘, Tab 导航, Pointer, Tap, D

来源:互联网 作者:佚名 时间:2013-10-22 10:33
[源码下载] 重新想象 Windows 8 Store Apps (49) - 输入: 获取输入设备信息, 虚拟键盘, Tab 导航, Pointer, Tap, Drag, Drop 作者:webabcd 介绍 重新想象 Windows 8 Store Apps 之输入 示例 1、演示如何获取输入设备的相关信息 Input/InputDeviceInfo.xaml

[源码下载]


重新想象 Windows 8 Store Apps (49) - 输入: 获取输入设备信息, 虚拟键盘, Tab 导航, Pointer, Tap, Drag, Drop



作者:webabcd


介绍
重新想象 Windows 8 Store Apps 之 输入



示例
1、演示如何获取输入设备的相关信息
Input/InputDeviceInfo.xaml

<Page x:Class="XamlDemo.Input.InputDeviceInfo" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:XamlDemo.Input" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable

Input/InputDeviceInfo.xaml.cs

/* * 演示如何获取输入设备的相关信息 */ using System; using Windows.Devices.Input; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Navigation; namespace XamlDemo.Input { InputDeviceInfo : Page { public InputDeviceInfo() { this.InitializeComponent(); } OnNavigatedTo(NavigationEventArgs e) { // 获取鼠标设备的相关信息 MouseCapabilities mouseCapabilities = new MouseCapabilities(); lblMsg.Text = + mouseCapabilities.MousePresent; // 是否存在鼠标 lblMsg.Text += Environment.NewLine; lblMsg.Text += + mouseCapabilities.HorizontalWheelPresent; // 是否有水平滚轮 lblMsg.Text += Environment.NewLine; lblMsg.Text += + mouseCapabilities.VerticalWheelPresent; // 是否有垂直滚轮 lblMsg.Text += Environment.NewLine; lblMsg.Text += + mouseCapabilities.SwapButtons; // 是否交换了左右按钮 lblMsg.Text += Environment.NewLine; lblMsg.Text += + mouseCapabilities.NumberOfButtons; // 鼠标上的按钮数量 lblMsg.Text += Environment.NewLine; lblMsg.Text += Environment.NewLine; // 获取硬件键盘设备的相关信息 KeyboardCapabilities keyboardCapabilities = new KeyboardCapabilities(); lblMsg.Text += + keyboardCapabilities.KeyboardPresent; // 是否存在硬件键盘 lblMsg.Text += Environment.NewLine; lblMsg.Text += Environment.NewLine; // 获取触摸设备的相关信息 TouchCapabilities touchCapabilities = new TouchCapabilities(); lblMsg.Text += + touchCapabilities.TouchPresent; // 是否存在触摸设备 lblMsg.Text += Environment.NewLine; lblMsg.Text += + touchCapabilities.Contacts; // 触摸设备所支持的多点触摸的点数 lblMsg.Text += Environment.NewLine; lblMsg.Text += Environment.NewLine; pointerDeviceList = PointerDevice.GetPointerDevices(); int displayIndex = 0; foreach (PointerDevice pointerDevice in pointerDeviceList) { displayIndex++; lblMsg.Text += + displayIndex; lblMsg.Text += Environment.NewLine; lblMsg.Text += + pointerDevice.PointerDeviceType; // Pointer 类型(Touch, Pen, Mouse) lblMsg.Text += Environment.NewLine; lblMsg.Text += + pointerDevice.IsIntegrated; // 是否是集成设备 lblMsg.Text += Environment.NewLine; lblMsg.Text += + pointerDevice.MaxContacts; // 最大的同时触摸点数 lblMsg.Text += Environment.NewLine; lblMsg.Text += + pointerDevice.PhysicalDeviceRect; // 物理设备的 Rect lblMsg.Text += Environment.NewLine; lblMsg.Text += + pointerDevice.ScreenRect; // Pointer 设备所支持的屏幕的 Rect lblMsg.Text += Environment.NewLine; lblMsg.Text += Environment.NewLine; } } } }


2、演示 SIP(Soft Input Panel)的应用
Input/Keyboard/Demo.xaml

<Page x:Class="XamlDemo.Input.Keyboard.Demo" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:XamlDemo.Input.Keyboard" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable TextBox - 文本输入框 IsTextPredictionEnabled - 是否启用“自动完成”,默认值 true IsSpellCheckEnabled - 是否启用拼音检查,默认值 false InputScope - 限制 SIP 的输入范围,即设置 SIP 的布局方式 对于 ReadOnly 的输入框,即使获取到焦点也不会弹出虚拟键盘

Input/Keyboard/Demo.xaml.cs

网友评论
<