如何在PB中实现热键

fangsystem 2002-06-03 11:36:39
如何在PB中实现热键
...全文
58 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sydeng 2002-06-03
  • 打赏
  • 举报
回复
用keydown()函数。
xiaoxianhe 2002-06-03
  • 打赏
  • 举报
回复
Key事件,KeyDown()判断,以前的帖子里面有很这样的帖子找找看。
531MT 2002-06-03
  • 打赏
  • 举报
回复
pbm_keydown 键盘上的一个键被按下。
pbm_keyup 键盘上的一个键被释放。
海洋‘s 2002-06-03
  • 打赏
  • 举报
回复
在数据窗口中用Enter键和SHIFT键代替TAB和SHIFT+TAB
在local external functions声明:
SUBROUTINE keybd_event(INT bvk,INT bscan,INT dwFlags,INT dwextrainfo) LIBRARY "user32.dll"
定义instance variables(实例变量):
int shift_i=0
在窗口中自定义两个用户消息:
Press_enter
Event id:pbm_dwprocessenter
press_shift
Event id:pbm_dwkey
Press_enter事件处理如下:
string lm
lm=GetColumnName() //得到当前列名
if lm="last_name" then //如果是最后一列 设成第一列
this.SetColumn("firs_name")
return 1
end if
send(Handle(this),256,9,long(0,0))
return 1
Press_shift事件处理如下:
string lm
if KeyDown(KEYSHIFT!) and shift_i=0 then
lm=this.GetColumnName()
if lm="first_name" then 是第一列返回,不响应该事件
shift_i=1
return 1
end if
keybd_event(16,0,0,0)
keybd_event(9,0,0,0)
keybd_event(16,0,2,0)
keybd_event(9,0,2,0)
shift_i=1
return 1
end if
ddtid 2002-06-03
  • 打赏
  • 举报
回复
Key事件里面写
jmsofts 2002-06-03
  • 打赏
  • 举报
回复
gz

1,075

社区成员

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

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