针对触摸输入优化 Windows 应用设计,并默认获得基本鼠标支持。
鼠标输入最适合需要在指向和点击时保持精确的用户交互。 Windows 的 UI 自然支持这种固有精度,它针对触摸的不精确性进行了优化。
鼠标和触摸输入的分歧在于触摸能够通过在对象上直接执行的物理手势(如轻扫、滑动、拖动、旋转等)更紧密地模拟对 UI 元素的直接操作能力。 使用鼠标的操作通常需要一些其他 UI 特性,例如使用句柄调整或旋转对象的大小。
本主题介绍鼠标交互的设计注意事项。
UWP 应用鼠标语言
在整个系统中一致地使用一组简洁的鼠标交互。
| 术语 | Description |
|---|---|
将鼠标悬停以学习 |
将鼠标悬停在元素上即可显示更详细的信息或教学图像(如工具提示),而无需进行任何操作。 |
单击鼠标左键执行主要操作 |
左键单击一个元素以调用其主要操作(例如启动应用或执行命令)。 |
滚动以更改视图 |
显示滚动条以在内容区域中向上、向下、向左和向右移动。 用户可以通过单击滚动条或旋转鼠标滚轮来滚动。 滚动条可以指示内容区域中当前视图的位置(通过触摸操作的平移显示类似的用户界面)。 |
右键单击以选择和执行命令 |
右键单击以显示导航栏(如果可用)和具有全局命令的应用栏。 右键单击某个元素以选择它,并使用所选元素的上下文命令显示应用栏。
注意 如果选择或应用栏命令不适合 UI 行为,请右键单击以显示上下文菜单。 但我们强烈建议您将应用栏用于所有命令操作。
|
用于缩放的 UI 命令 |
在应用栏中显示 UI 命令(如 + 和 -),或按住 Ctrl 键并旋转鼠标滚轮,以模拟缩放手势。 |
用于旋转的 UI 命令 |
在应用栏中显示 UI 命令,或者按住 Ctrl+Shift 键并滚动鼠标滚轮,以模拟旋转手势。 旋转设备本身以旋转整个屏幕。 |
单击左键并拖动以重新排列 |
单击左键并拖动元素以移动它。 |
单击左键并拖动以选择文本 |
在可选文本中单击左键,然后拖动以将其选中。 双击以选择一个单词。 |
鼠标输入事件
大多数鼠标输入都可以通过所有 UIElement 对象支持的常见路由输入事件进行处理。 这些包括:
- BringIntoViewRequested
- CharacterReceived(字符接收)
- ContextCanceled
- ContextRequested
- DoubleTapped
- DragEnter
- DragLeave
- DragOver
- DragStarting
- 删除
- 拖放完成
- GettingFocus
- GotFocus
- 控股
- KeyDown
- KeyUp
- LosingFocus
- LostFocus
- 操作完成
- ManipulationDelta
- ManipulationInertiaStarting
- 操控开始
- 操作开始
- NoFocusCandidateFound
- 指针取消
- 光标捕获丢失
- PointerEntered
- PointerExited
- PointerMoved
- PointerPressed
- PointerReleased
- PointerWheelChanged
- PreviewKeyDown
- PreviewKeyUp
- RightTapped
- 窃听
但是,你可以使用 Windows.UI.Input 中的指针、手势和操作事件来利用每个设备(如鼠标滚轮事件)的特定功能。
样品: 请参阅我们的 BasicInput 示例,了解 。
视觉反馈指南
- 检测到鼠标时(通过移动或悬停事件),显示特定于鼠标的 UI 以指示元素公开的功能。 如果鼠标没有移动一定的时间,或者如果用户启动触摸交互,则让鼠标 UI 逐渐消失。 这样,UI 将保持干净且整洁。
- 不要将光标用于悬停反馈,元素提供的反馈已足够(请参阅下面的游标)。
- 如果元素不支持交互(如静态文本),请不要显示视觉反馈。
- 不要将焦点矩形与鼠标交互一起使用。 为键盘交互保留这些内容。
- 同时显示表示相同输入目标的所有元素的视觉反馈。
- 提供按钮(例如 + 和 -),用于模拟基于触摸的作,例如平移、旋转、缩放等。
有关视觉反馈的更多常规指南,请参阅 视觉反馈指南。
Cursors
一组标准游标可用于鼠标指针。 这些用于指示元素的主要作用。
每个标准游标都有一个与之关联的相应默认图像。 用户或应用可以随时替换与任何标准游标关联的默认图像。 通过 PointerCursor 函数指定游标图像。
如果需要自定义鼠标光标:
- 始终使用箭头光标
用于可单击的元素。 不要将指向手游标(
)用于链接或其他交互式元素。 请改用悬停效果(前面所述)。 - 将
用于可选择文本。 - 当移动是主要动作(如拖动或裁剪)时,请使用移动
。 不要将移动光标用于主要用于导航的元素(如“开始”磁贴)。 - 当对象可调整大小时,请使用水平、垂直和对角线调整光标(
、
、
、
)。 - 在固定画布(如地图)内平移内容时,使用抓
、
。