在PB中实现热键功能的方法

win api (模拟键) 想写几个控制键盘鼠标的小脚本 ,列出几个刚学习的要用到的简单windows.h API函数和关键字 #######1句柄 ## HWND  定义窗口句柄变量  关键字  //就是窗体变量 HWND wnd; wnd=FindWindow(NULL,"1.txt  - 记事本");         //拿名称为1.txt - 记事本句柄 #######2SendMessage 函 阅读详情

在PB中实现热键功能的方法  (张 涛)

 

在程序中添加一些热键可以让用户更加快速实现某些功能,对于一些熟练的操作人员,他们更容易接受快捷键。例如大家熟悉的金山词霸,一般情况下她处在系统光标区,用户可以通过Ctrl+Alt+F1组合键来切换是否屏幕取词。那么如何让我们的程序也能实现这个功能呢?下面作者就介绍实现方法:
    1、首先我们必须声明Windows API的外部函数:
          function long SendMessageA(long lhWnd,uint uiMsg,long lwMsg,long lwParam) library 'user32.dll'
    2、接下来,我们必须给一些需要用到的定量赋上初始值。
    Public:
        Constant Long WM_SETHOTKEY = 50 //设置热键消息值
        Constant Long HK_MYHOTKEY = 1648 //热键参数值
        Constant Long SC_HOTKEY = 61776 //PB中的热键消息
    其中,HK_MYHOTKEY不是固定的,它根据用户的需要而定。它的具体值通过如下方法确定的:高8位字节 + 低8位字节组成16为字节,然后将她换算到十进制即得到所需的HK_MYHOTKEY值。高8位字节值为一些辅助键(Control、Alt、Shift等),低8位字节为你想使用的键的ASCII码。例如:A=65..Z=90,Shift=1,Control=2,Alt=4,Extended=8,F1=112..F12=123等,如果我们要使用Ctrl+Alt+A作为热键,则A=65,转换成十六进制为41,Ctrl+Alt=2+4=6,转换成十六进制仍然是6,两则组合即为641,再重新转换回十进制得到1601;同样,如果我们用Ctrl+Alt+F1作为热键,F1=112,可以得到HK_MYHOTKEY值应为1648。
    3、接下来,我们必须利用下面代码告诉窗口我们的热键:
//在窗口的Open事件中
long ll_RC

ll_RC = SendMessageA(Handle(this), WM_SETHOTKEY, HK_MYHOTKEY, 0)
if ll_RC <> 1 then
messagebox("错误","错误信息")
end if
    4、最后,编写当用户按下热键时的处理程序:
//在窗口的Other事件中
IF wparam = SC_HOTKEY THEN
    This.Show()
//在这里编写处理程序
END IF

操作系统笔记(含王道计算机考研——操作系统课件) 操作系统(OS) 笔记根据B站王道计算机考研——操作系统视频整理所得,视频链接:https://b23.tv/0I2qex 视频中所用课件:链接:https://pan.baidu.com/s/101bFWm0Tv0emNpEneidYPA 提取码:y3dd 1.计算机系统概述 1.简介 什么是操作系统? 操作系统(Operating Ststem, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是 阅读详情

相关推荐

白话详细解读(七)----- CBAM:Convolutional Block Attention Module

一、CBAM简介 论文链接:https://x.sci-hub.org.cn/scholar?hl=zh-TW&as_sdt=0%2C5&q=CBAM%3A+Convolutional+Block+Attention+Module&btnG=&oq=CB CBAM这篇论文是在2018年提出的,自提出之后,已经被引用上千次,可见其影响力。CBAM是一种专门为了卷积神经网络而设计的注意力模块,传统的卷积存在只关注局部信息,而往往忽略全局信息的弊端,以3*3卷积为例,滤波器有9个

奋斗の博客 1万+

PB快捷键

PB快捷键用API注册快捷键:FUNCTION Integer GlobalAddAtom(ref string lpString) LIBRARY "kernel32.dll" ALIAS FOR "GlobalAddAtomA" FUNCTION ulong RegisterHotKey(ulong hwnd,ulong id,ulong fsModif

Brett的专栏 1705

PB实现系统热键功能的新方法.

pb初学者必看.

PB热键

在程序中添加一些热键可以让用户更加快速实现某些功能,对于一些熟练的操作人员,他们更容易接受快捷键的操作方式。例如大家熟悉的金山词霸,一般情况下程序处在系统光标区,用户可以通过Ctrl+Alt+F1组合键来切换是否进行屏幕取词。首先来说一下如何让我们用PowerBuilder编写的程序也能实现这个功能呢?有两种方法方法一、本方法在窗口获得焦点的时候,用户按下热键,就可以触发窗口中的事件。

*冷鹰* 5772

C# Win32消息系列--SC

public enum SysCmd { SC_SIZE = 0xF000, SC_MOVE = 0xF010, SC_MINIMIZE = 0xF020, SC_MAXIMIZE = 0xF030, SC_NEXTWINDOW = 0xF040, SC_PREVWINDOW = 0xF050,

大地缸的专栏 1710

在Struts2.0中使用JSON结合DWR和EXT

在Struts2.0中使用JSON结合DWR和EXT 如题,大家在Struts2.0中使用json是一般都选择了jsonplugin,我对jsonplugin不太熟悉,因此我选择了json-lib这个jar包。不知道jsonplugin对bean的支持是不是很好,还是只能对action进行序列化。好了现在说一下我的思路。 我先用Json-lib将我的bean进行序列化,当然此过...

天天开心 171

Struts2.0、JSON、EXT、DWR等使用日志

1、Struts2 REST:参考文章:http://www.iteye.com/topic/110934 在这篇文章中,提到通过改写Restful2ActionMapper实现REST的URL风格,并使用不同的HTTP请求方法来处理对资源的CRUD(创建、读取、更新和删除)操作,值得学习。       另一个学习点    不要使用扩展名来作为url-patte...

yeahjava的博客 174

ssh整合例子(spring3 + struts2 + hibernate4+dwr+ext+json)

ssh整合例子(spring3 + struts2 + hibernate4+dwr+ext+json) 原: http://zz563143188.iteye.com/blog/1462413 springstruts2hibernatedwrmvc 1.文档说明: 我的Csdn http://blog.csdn.net/zl563143188 spring3

小糊涂蛋大糊涂神的专栏 4543

struts2+ibatis2+spring2+dwr+json+ext2初体验

1119-1123       又是一周光景,忙碌而充实的一周.这种感觉虽然很忙累,但是内心里头成长的感觉很好.或者说,已经习惯了这样的忙碌.          1119,早会的时候,公司的会议室,似乎已经容不下所有的人了.公司最近招了一些人,从市场部到技术部,加上合作单位派来的人,莫名地在心理有一种意识,公司真的开始慢慢发展了.想想自己刚进公司时候的样子,到现在真的不太一样了.虽然才半年多的...

成长全记录 162

Java Web开发模型新构思——Hibernate/JPA…+Spring+Struts2/DWR…+ExtJS

        目前java web开发比较流行的框架有Struts/Struts2(WebWork2)、JSF/MyFaces、Hibernate、JPA、Spring等,但用Struts/Struts2(WebWork2)、JSF/MyFaces等Web框架,还是JSP/Servlet来开发界面,都少不了写大量的Java代码,还要使用各种页面标签,页面开发复杂,很难做到真正的分离,实际

Howarste的专栏 5730

寻找Yui-Ext高手(yui-ext+json+struts2)完美组合的例子出现问题

页面内容如下: &lt;%@ page language="java" contentType="text/html; charset=utf-8"     pageEncoding="utf-8"%&gt; &lt;%@ taglib prefix="s"  uri="/struts-tags" %&gt; &lt;!DOCTYPE HTML PUBLIC &quot

pdw2009 286

ext表格分页(struts+hibernate)

毕业设计来临,我的课题是超市管理系统实现,由于不想花费过多的时间在美工上,所以自学了一些ext方面的知识,其中分页的实现是非常常用而又重要的.借丰富的网络资源完成了其分页的实现。 也许分页的实现对像我这样的初学者来说比较有难度,其实如果你认真去研究他的原理,感觉并没想像中的那么难。刚开始我想用DWR框架来实现客户端到服务器的数据交换,个人觉得其实现过程过于繁琐,不适合初学者学习。如果有兴趣的可以...

iteye_3661的博客 283

页面渲染 ajax vs struts2

&lt;!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso...

shishi11 198

利用Dojo和JSON建立无限级AJAX动态加载的功能模块树

导读:   时间:2006-10-08 关键字: java,dojo,AJAX,JSON   相关文章:   在Struts2.0中使用JSON结合DWR和EXT   原创中文分词代码分享(1.2)——词典接口   更多相关推荐   看了“使用hibernate实现树形结构无限级分类”这篇文章后,我也想将自己在所有开发的项      目中使用的功能模块树的实现方法以及完整DEMO(含源码)

xu的blog 2104

Spring 技术博客

  1、SpringMVC + spring3.1.1 + hibernate4.1.0 集成及常见问题总结 http://sishuok.com/forum/blogPost/list/2625.html   2、ssh整合例子(spring3 + struts2 + hibernate4+dwr+ext+json) http://zz563143188.iteye.com/b...

suyijianke的博客 124

模板管理 编辑文件功能

文件编辑功能: 1、     "> http://localhost:8080/portalMS/template/templateResourceMgt.action?templateListType=0&operatorType=3&template.templateId=59006 2、         /template/templateFile_iframe.

okkeqin的专栏 2284

pb 判断触发键盘按键 附:pb键盘键值枚举值

pb  判断触发键盘按键   附:pb键盘键值枚举值 定义一个事件key(pbm_keydown),然后在事件里写     if   key=keyescape!   then           close(this)//要处理的事件     end   if          附:pb键盘键值枚举值 Type of key                  

孙天成-全栈工程师 5425

变压器封装PCB文件3D封装AD库

PcbLib文件类型、直插元器件、贴片、Altium Designer封装库变压器封装PCB文件3D封装Altium Designer库的型号类型如下,总有你需要的一款:DA10XC、DA10XMC、EE42-15V 8+8、EE-35-V、EE-40、EE-42、EE-42V、EE-42X2、EE-55-H、EI35x20-WI-10P、EPC17-10V 5+5、PQ2620、PQ2620-V、PQ3220-V、PQ3225-V、PQ3230

上一篇: 海量数据库的查询优化及分页算法方案
下一篇: 破解ASA数据库超级用户口令的方法
小平头儿
博客等级 码龄25年 12粉丝 13原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值