数据窗口焦点的问题

goldg 2000-12-12 10:34:00
在Freeform中,输入一条记录后,保存,然后在插入一条,焦点总停留在最后一个输入框内,怎么让他自动跳到第一个内?用户要求完全用小键盘录入,数字键加回车,不能用鼠标。
...全文
116 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
viv_wangsc 2000-12-23
  • 打赏
  • 举报
回复
呵呵,上面兄弟说的应该都可以解决问题了,给大家加分啊:)
qianhaiyuan 2000-12-13
  • 打赏
  • 举报
回复
可以使用EnterToTab方式用Enter键实现一条记录的前一项向后项移动,再在ItemChanged事件里判断是否在最后一个字段,如是,则保存,再插入一行,设置焦点到第一列。

EnterToTab的方法:在对应的数据窗口中添加新事件:EnterToTab(EventId:pbm_dwnprocessenter)
Send(Handle(this),256,9,Long(0,0))
return 1
romance_zhang 2000-12-13
  • 打赏
  • 举报
回复
在数据窗口的rowfocuschanged事件中写:
This.SetColumn(1)
保证你每次改变当前行时,都自动跳到新行的第一列;若你只想对新增加的行使用该规则,写:
IF This.GetItemStatus(currentrow, 0, Primary!) = New! Then
This.SetColumn(1)
End IF
oddpoint 2000-12-13
  • 打赏
  • 举报
回复
用setcolumn()函数即可!

1,072

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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