Delphi D10 StringGrid安卓下虚拟键盘的使用
需求
一个项目,在安卓下使用Grid对数据的处理更为直观与方便,所以选择了StringGrid,起初绑定数据,设置数据内容的增、删、保存等非常方便,不用一行代码搞定。问题出在1、怎么让某个单元格输入完成后可以确认输入后(或说自动)跳转到下一个单元格,因为每次去点击单元格都感觉不很方便;2、各单元格所在列,有字符、有数字,怎么样让虚拟键盘出来后可以是对应的默认状态,每次去切换也不是很人性化的。
解决方法
点击键盘确认键自动到下一个单元格
StringGrid有一个属性“Model”,在属性框里看不到的,所以需要使用代码的方式去设置。在窗体初始化时,如创建过程增加下面一行代码:
StringGrid1.Model.CellReturnAction:=TCellReturnAction.GotoNextColumn;
TCellReturnAction对应三个选择项:(None, GotoNextRow, GotoNextColumn),根据项目需要选择对应的跳转就可以了。默认情况下是None,不会跳转的。
如果单元格是数字型的,虚拟键盘自动弹出数字输入模式
因为使用的是数据绑定方式,默认情况下并没有去选择对应列的数据类型,如下图红框。通常自动时为默认选项,
其中类型TCurrencyColumn、TFloatColumn或TIntegerColumn都是继承于TCustomNumberColumn,所以,当选择这三个中的其中一个时,虚拟键盘会自动转换为数字输入模式。三种类型在显示与输入上有不同限制,需要根据不同情况去选择合适的使用。
如果不是绑定数据方式,在设置StringGrid各列是,选择对应的列类型也是可以的。
过程是辛苦的
最初在网上没有找到资料,官网对控件属性与方法的描述也不全面,Delphi好就好在可以看系统处理源码,再一点一点去跟踪与分析。
之前尝试过在KeyUp事件中判断Key = vkReturn的方式去通过代码处理的,失败了。查资料没有,没办法只能一点一点试,一点一点看系统代码。
测试环境:10.3.2,其他版本没试过。
Delphi D10 StringGrid安卓下虚拟键盘的使用相关推荐
- Delphi D10.X安卓APP开发让原生Toast显示图片
上次完成了<Delphi D10.X安卓APP开发中简单使用原生Toast>,可以快速方便的使用Toast,并且可以自定义显示位置.在此基础上,今天我们来实现在Toast中显示图片的方式. ...
- unity ugui android 小键盘,Unity inputfield 实现显示 隐藏密码功能(在安卓中切换不打开下虚拟键盘)...
乍一看实现这个功能很简单,不就是切换一个inputfield的输入类型,将其换做password就可以了嘛. public void ToggleClick(bool isShow) { input. ...
- Delphi D10.X安卓APP开发中获取硬件信息及手机号
Demo与代码已上传到CSDN下载. 这里简单说一下代码内容,完整代码请自行下载,不清楚的欢迎留言交流. 前言 演示Demo使用了我自己开发的一个控件,TLayoutPro <Delphi D1 ...
- Windows下虚拟键盘鼠标(USB中文网)
最近整理了一下代码,完全自主研发. 功能比较简单,就是在Windows操作系统下虚拟一个标准的键盘和鼠标. 键盘的按键可以通过应用软件下发对应的报告内容,再由虚拟的键盘转成系统的标准键盘消息,这样相当 ...
- 【Delphi】Windows系统下的键盘钩子
目的:为了实现得力牌扫码枪的输入,并执行特定功能. 场景描述:此款扫码枪模拟键盘信号,并支持以回车.换行等结尾,这里采用回车结尾进行开发. 思路:使用Windows的钩子回调函数,这里模拟键盘信号所以 ...
- PySide2使用屏幕虚拟键盘
1.屏幕虚拟键盘 创建文件virtualkeyboard.py import sys, os from PySide2.QtWidgets import QApplication, QLineEdit ...
- 安卓虚拟键盘_安卓这些年变化多惊人?那些老玩家才懂的回忆
1安卓曾经的界面你记得吗回顶部 [PConline杂谈]新一代安卓系统很快就要正式和大家见面了,目前安卓10的前身安卓Q已经向Pixel设备推送了测试版,而安卓Q之中的"Q"到底会 ...
- 微信开发安卓虚拟键盘挡住输入框的问题
再更一次2016/4/20 10:23 今早还看到 有朋友在"微信里面的浏览器在 s7 edge 上 键盘覆盖网页上表单 ,表单不会自动向上移动,导致无法看着输 "今早在腾讯浏览器 ...
- matlab edittext 回车,安卓中的虚拟键盘实现,KeyEvent的事件分发、处理机制。EditText是如何将KeyEvent事件转为字符输入的?...
目录 一.实现一个可以模拟输入的软键盘 一开始,我们的需求是在用户经常使用的部分界面中,增加虚拟软键盘,减少用户对于外接键盘的依赖 如图,在整单改价界面右侧增加了方便用户快捷输入的软键盘,用户不需要使 ...
最新文章
- 一个程序员是怎么被逼疯的?
- EasyTable2.1 功能更加强大,bug全面修复的html table插件!
- python代码质量检查工具_python代码检查工具pylint 让你的python更规范
- 一台机器上同时部署多个tomcat服务
- 时间轴 纵向_高考最新硬货!高中历史时间轴(文字版)高能来袭,背会就能多拿分!...
- Mybatis 别名机制,自动扫描 数据的增删改
- jax-ws 实现webservice
- iwconfig使用
- 确定性知识表示法--规则(产生式)表示法
- 【DBSDFZOJ 4370】小宁的机器人(模拟)
- CentOS7下安装和开启远程连接reids
- 2022年 《三国演义》手摘
- 【Autopsy数字取证篇】Autopsy数字取证软件的下载安装与优化配置
- 多传感器融合及其应用
- DVWA通过攻略之SQL注入
- RRDTool和mrtg的比较
- PythonQt——yolov5手势识别隔空操纵车载音乐播放器
- cpc按点击计算怎么算_什么是CPC(每次点击费用)?
- 如何设计网络服务器?
- 一种日志采集装置及方法
热门文章
- YOLOv5~目标检测模型精确度
- 十四、51单片机之AD转换
- 【0基础强力推荐】R语言快速入门
- 编译chrome for android,Chrome for Android 编译了两天终于在师傅指导下搞定
- A Simple but Effective Pluggable Entity Lookup Table for Pre-trained Language Models翻译
- JSON数据 与 JSON数据的使用
- Visual Studio 2017十五项新功能体验
- window的onload()的使用
- 原理图,PCB设计软件
- 【测试分析】KYM全面收集测试信息