请教如何在数据窗口中有下拉数据窗口的列上获取keydown事件

yaiger 2003-05-15 11:09:20
现在的问题是如果列具有下拉数据窗口,在pbm_downkey中就无法捕捉到keydown事件,谁能够解决?
...全文
102 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
Thinkinger 2003-06-11
  • 打赏
  • 举报
回复
系统事件中有一个pbm_dwndropdown的事件,是在下拉数据窗口下拉时触发的!
yaiger 2003-06-11
  • 打赏
  • 举报
回复
问题解决了,无意中发现的方法,没有想到能找到答案
yaiger 2003-05-20
  • 打赏
  • 举报
回复
这个问题如果没有人能解决,明天我就删掉了
先声明不是没有信誉阿
yaiger 2003-05-18
  • 打赏
  • 举报
回复
你们可以自己测试一下啊,
定义一个数据窗口对象,其中一列设置成下拉数据窗口,可以编辑
然后建立一个窗口,放上该数据窗口对象,定义一个自定义事件 event id pbm_dwnkey
写入代码:
CHOOSE CASE key
CASE keydownarrow!
MessageBox('','down')
END CHOOSE

然后到那个下拉数据窗口列试试看就知道了,和其它列比较一下看看
devil_heart 2003-05-16
  • 打赏
  • 举报
回复
没有问题啊,只要定义了pbm_dwnkey,都可以的啊,把你的pbm_dwnkey中的代码贴出来吧
xirumin 2003-05-15
  • 打赏
  • 举报
回复
给分吧,否则你的信誉分就会减了。
xirumin 2003-05-15
  • 打赏
  • 举报
回复
可以的,不过是在pbm_dwnkey中捕捉
fengzeng 2003-05-15
  • 打赏
  • 举报
回复
你是想在keydown事件中按回车键跳到下一列吗?pbm_dwnprocessenter
if keyDown(KeyEnter!) or KeyDown(KeyTab!) then
send(handle(this),256,9,long(0,0))
return 1
end if
888888888888 2003-05-15
  • 打赏
  • 举报
回复
关注
prain2003 2003-05-15
  • 打赏
  • 举报
回复
不会吧,我记得enter键是管用的,不过上下箭头键不管用
Jonea 2003-05-15
  • 打赏
  • 举报
回复
IF GetColumnName() ='名称' THEN
//....
END IF
yaiger 2003-05-15
  • 打赏
  • 举报
回复
不是的,我现在实现的功能是某个列可以自己输入值由系统校验,也可以按方向键弹出一个新的窗口来选择,不想让选择下拉数据窗口里面的值,所以需要捕捉keydown事件
xirumin 2003-05-15
  • 打赏
  • 举报
回复
我看成是pbm_downkey了,那估计你是想渐次输入了,比如输入'a'就显示所有a开头的,再输入'b'就显示所有'ab'开头的?
yaiger 2003-05-15
  • 打赏
  • 举报
回复
对不起,请看清楚题目,我已经用了pbm_dwnkey,但是列是有下拉数据窗口的,在pbm_dwnkey事件中就无法捕捉keydown。

我没有说需要实现回车的功能,事实上功能复杂的多

to Jonea(魔鬼) 你的答案根本是牛头不对马嘴
to fengzeng(风之子) 不是要实现你说的功能
to xirumin(吃好喝好) 你的答案我早知道了,而且我题目中已经说明了是在pbm_dwnkey事件,所以不能给你分
joss 2003-05-15
  • 打赏
  • 举报
回复
没有错,同意楼上!
定义回车事件和KEYDOWN事件

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧