当前位置:网站首页>Explication détaillée du mécanisme de distribution des événements d'entrée multimodes
Explication détaillée du mécanisme de distribution des événements d'entrée multimodes
2022-07-04 21:02:00 【InfoQ】
Un.、 Aperçu des entrées multimodes
2.、Introduction au flux de données sur les événements d'entrée et l'état de l'appareil
- Le processus de distribution des événements d'entrée passe d'abord par le module d'interception des événements d'entrée , Lorsqu'un intercepteur est enregistré , L'entrée d'un événement mettra fin à l'escalade continue , L'intercepteur approprié interceptera tous les événements d'entrée . Cette fonction d'interception d'événements supporte actuellement principalement le mode d'accessibilité .
- Lorsqu'aucun intercepteur n'est enregistré , Les événements d'entrée sont signalés au module d'écoute des événements d'entrée , Application au niveau du système (Par exemple::Configuration du système、Bureau) Saisissez les événements en écoutant , Prise en charge des caractéristiques au niveau du système (Par exemple::Barre d'état cachée/Disparaître, etc.).
- L'écoute des événements par le module d'écoute des événements ne bloque pas la poursuite de l'escalade des événements ; Prise en charge de l'écoute des événements , Les événements d'entrée continuent également d'être signalés .
- Les événements clés sont signalés au module de distribution des clés d'abonnement pour traitement , Distribué au traitement de la demande correspondant , Fin du processus de distribution des événements .
- Les autres événements de l'écran tactile et de la souris ne passent pas par le module de distribution des clés d'abonnement , Continuera à être signalé à la fenêtre d'application pour traitement .
Trois、 Principes de distribution des événements d'entrée multimodes
- Si aucun bouton de la souris n'est enfoncé , Quelle cible est actuellement pointée par la souris , L'événement d'entrée de la souris est distribué à la Cible verrouillée par les coordonnées .
- Si un bouton de la souris est enfoncé , Utilisez la Cible verrouillée par les coordonnées de la souris lorsque le premier bouton est enfoncé comme point de départ , Jusqu'à ce que tous les boutons soient levés .
- Lors de l'entrée de l'écran tactile , Diviser l'offre en appuyant sur le premier doigt sur la Cible verrouillée comme événement d'entrée , Jusqu'à ce que tous les doigts soient levés .
Quatre、OpenHarmony 3.1 Version nouvelle description de l'interface
- Importer le module en premier
// Méthode d'entrée en s'abonnant à l'état du clavier physique dans la logique d'affichage du clavier souple :Insérer/Retirez
// SelonisPhysicalkeyboardExist La valeur de détermine si le clavier souple est éjecté
...
let isPhysicalkeyboardExist = false;
inputDevice.on("change", (callback) => {
console.log("type: " + callback.type + ", deviceId: " + callback.deviceId);
inputDevice.getDevice(callback.deviceId, (ret) => {
console.log("The keyboard type of the device is: " + ret);
if (ret == keyboard.ALPHABETIC_KEYBOARD && callback.type == 'add') { // Le dispositif de prise à chaud est un clavier
isPhysicalkeyboardExist = true;
} else if (ret == keyboard.ALPHABETIC_KEYBOARD && callback.type == 'remove') {
isPhysicalkeyboardExist = false;
}
});
});
...
listener: function(data) {
console.log("type: " + data.type + ", deviceId: " + data.deviceId);
}
// Annuler séparément listenerSurveillance.
inputDevice.off("change", this.listener);
// Annuler tous les écoutes
inputDevice.off("change");// Après avoir annulé l'écoute , Le clavier souple apparaît par défaut
边栏推荐
- Après l'insertion de l'image dans le mot, il y a une ligne vide au - dessus de l'image, et la disposition est désordonnée après la suppression
- Automatic insertion of captions in word
- Ten years' experience of byte test engineer directly hits the pain point of UI automation test
- acwing 3302. 表达式求值
- Understand Alibaba cloud's secret weapon "dragon architecture" in the article "science popularization talent"
- Advantages of RFID warehouse management system solution
- After inserting a picture into word, there is a blank line above the picture, and the layout changes after deletion
- How to solve the problem that win11 cannot write the value to the registry key?
- 【服务器数据恢复】某品牌服务器存储raid5数据恢复案例
- Win11亮度被锁定怎么办?Win11亮度被锁定的解决方法
猜你喜欢
电脑页面不能全屏怎么办?Win11页面不能全屏的解决方法
Understand Alibaba cloud's secret weapon "dragon architecture" in the article "science popularization talent"
Leetcode+ 81 - 85 monotone stack topic
How does wincc7.5 SP1 find variables and their positions through cross indexing?
【1200. 最小絕對差】
字节测试工程师十年经验直击UI 自动化测试痛点
测试员的算法面试题-找众数
五子棋 上班摸鱼工具 可局域网/人机
render函数与虚拟dom
What if win11u disk refuses access? An effective solution to win11u disk access denial
随机推荐
《动手学深度学习》(三) -- 卷积神经网络 CNN
render函数与虚拟dom
记一次重复造轮子(Obsidian 插件设置说明汉化)
Alibaba testers use UI automated testing to achieve element positioning
js 闭包
二叉树的四种遍历方式以及中序后序、前序中序、前序后序、层序创建二叉树【专为力扣刷题而打造】
冰河的海报封面
Browser render page pass
Understand Alibaba cloud's secret weapon "dragon architecture" in the article "science popularization talent"
Why is TCP three handshakes and four waves
[solution] paddlepaddle 2 X call static graph mode
电脑页面不能全屏怎么办?Win11页面不能全屏的解决方法
WinCC7.5 SP1如何通过交叉索引来寻找变量及其位置?
go语言笔记(4)go常用管理命令
jekins初始化密码没有或找不到
Implementation of redis distributed lock
PermissionError: [Errno 13] Permission denied: ‘data.csv‘
Advantages of RFID warehouse management system solution
LeetCode 7. Integer inversion
LeetCode 871. 最低加油次数