起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 430|回复: 10

【搞定】如何代码控制DATAGRID**

[复制链接]
发表于 2007-5-22 16:29:06 | 显示全部楼层 |阅读模式
如图,两种状态的变化。

b.gif

4.33 KB, 下载次数: 189

回复

使用道具 举报

 楼主| 发表于 2007-5-22 16:31:40 | 显示全部楼层

另一状态

另一状态

a.gif

4.5 KB, 下载次数: 197

回复 支持 反对

使用道具 举报

发表于 2007-5-22 16:46:30 | 显示全部楼层
楼主,你想实现啥需求,我说的是你原始需求
2楼图一个是焦点进入该字段,1楼的图是可以修改该字段的值
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 16:57:59 | 显示全部楼层
你好。我想实现在DATAGRID上按回车跳到一列,直接可以编辑录入。但当跳到STOCKTYPE这一列时,一按键会弹出一另一窗体。按键的值显示在另一窗体上
我试了下,只有当设置OPTIONEX-egoEnterShowEditor勾去掉才能响应ONKEYPRESS事件。但同时出现按回车不跳一行,不能直接编辑,还要多点一次鼠标才行。
意思也就是,
进入焦点字段(2楼图)下能响应ONKEYPRESS,ONKEYDOWN,
进入修改状态字段(1楼图)下不能响应ONKEYPRESS,ONKEYDOWN,

看有办法能满足我这个需求吗?
回复 支持 反对

使用道具 举报

发表于 2007-5-23 09:11:38 | 显示全部楼层
我们也有这个需求
回复 支持 反对

使用道具 举报

发表于 2007-5-23 10:15:13 | 显示全部楼层
选择egoEnterShowEditor属性后就不能响应onkeypress,但是能响应OnkeyDown事件啊,你的弹出窗体可以在OnkeyDown中做啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-23 12:13:34 | 显示全部楼层
onkeydown里写是可以,小健盘按键转成字符后不对,用 borland.Delphi.Windows.Char(key)
转换后的值。按1会变成a,按2会变成b.
只有写在onkeypress里才正确。不知何故。
回复 支持 反对

使用道具 举报

发表于 2007-5-24 10:39:14 | 显示全部楼层
OnKeyDown里的key是virtual key code, 对应键盘上的每个按键和ASCII码是完全不同的概念。
OnKeyPress里的Key只是char,只测字符键
delphi里先触发OnKeyPress再触发OnKeyDown
平台里和delphi是完全一样的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-24 14:00:22 | 显示全部楼层
所以还是没有办法,我们要的就是ONKEYPRESS。
回复 支持 反对

使用道具 举报

发表于 2007-5-24 14:16:11 | 显示全部楼层
onkeyPress没有办法,你还是考虑在OnKeyDown或OnKeyUp里面写,可以找一找delphi中相关的例子参考。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-11 06:20 , Processed in 0.041951 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表