文档章节

WinAPI: GetKeyNameText - 根据键盘消息获取按键名称

涂孟超
 涂孟超
发布于 2014/09/26 15:36
字数 112
阅读 8
收藏 0
本例效果图:


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure MyMsg(var msg: TWMKeyDown); message WM_KEYDOWN;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Canvas.Font.Size := 24;
  Canvas.Font.Style := [fsBold];
  Canvas.Font.Color := clRed;
  Canvas.Brush.Color := clWhite;
end;

procedure TForm1.MyMsg(var msg: TWMKeyDown);
var
  buf: array[0..31] of Char;
  rect: TRect;
  str: string;
begin
  {获取}
  GetKeyNameText(msg.KeyData, buf, Length(buf));
  {画出来}
  str := buf;
  rect := ClientRect;
  Canvas.FillRect(rect);
  Canvas.TextRect(rect, str, [tfSingleLine, tfCenter, tfVerticalCenter]);
  inherited;
end;

end.

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/05/02/1179646.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
Win32多语言IME应用程序编程接口(API)

十三、IMM函数 1、IMM用户界面函数 以下是用户界面窗口可以使用的输入法管理器函数。应用程序也可以使用它们改变输入法的状态。 ImmGetCompositionWindow ImmSetCompositionWindow ImmGetCa...

yousss
04/25
0
0
vc编程的ime输入法菜单开发

WINDOWS 下 IME 编程 IME 编程心得 第一章 Windows9x 系统下汉字输入法的基本原理 第二章 Windows9x 系统提供的 ime 管理函数 第三章 ime 文件中必须使用的结构 自由拼音输入法的测试 输入法...

crossmix
2014/12/07
0
3
C#制作QQ截图的自动框选功能的个人思路(二)<设置Hook>

上一篇介绍了一下我的一个个人思路而已、、这一篇来分析分析代码、、、 主要分为两大部分 第一部分 就是 那个自动框选的那部分了啊 第二部分 就是设置Hook(不然窗体一直禁用啊) 先来说说H...

长平狐
2012/12/10
193
0
[Beautifulzzzz的博客目录] 快速索引点这儿O(∩_∩)O~~,红色标记的是不错的(⊙o⊙)哦~

3D相关开发 [direct-X] 1、direct-X最小框架 [OpenGL] 1、环境搭建及最小系统 [OpenGL] 2、企业版VC6.0自带的Win32-OpenGL工程浅析 51单片机 [51单片机] 1602液晶显示控制代码 [51单片机] 1...

史迪奇2号
2017/08/01
0
0
Qt之Windows键盘消息学习

为了找到 QTBUG18896 问题的答案,只好先看看Windows下面的键盘消息处理,看到最后:发现这个问题和Windows似乎没有必然的联系 ^_^ (见 QToolBar焦点问题 (QTBUG18896) ) Windows键盘消息 对...

IanSun
2011/05/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

InvalidKeyException: Illegal key size

Caused by: java.lang.RuntimeException: java.security.InvalidKeyException: Illegal key size 解决方案:去官方下载JCE无限制权限策略文件。 jdk 5: http://www.oracle.com/technetwork/j......

自由的开源
7分钟前
0
0
JAVA秒杀实现以及优化原理

秒杀与其他业务最大的区别在于:秒杀的瞬间, (1)系统的并发量会非常的大 (2)并发量大的同时,网络的流量也会瞬间变大。 关于(2),最常用的办法就是做页面静态化,也就是常说的前后端分...

小贱是个程序员
11分钟前
1
0
Spring Aop之Advisor解析

在上文Spring Aop之Target Source详解中,我们讲解了Spring是如何通过封装Target Source来达到对最终获取的目标bean进行封装的目的。其中我们讲解到,Spring Aop对目标bean进行代理是通过Ann...

爱宝贝丶
14分钟前
0
0
Java高级工程师面试阿里,阿里云,天猫,菜鸟,涉及到的知识点

前言: 分享 Java高级工程师面试阿里,阿里云,天猫,菜鸟,涉及到的知识点,文章有点长,但比较全面,阅读时间15分钟左右,干货满满。 一、HashMap的那些事 1.1、HashMap的实现原理 1.1.1、...

Java大蜗牛
38分钟前
2
0
nginx模块学习五 expires 浏览器缓存

缓存原理 语法 Syntax: expires [modified] time;expires epoch | max | off;Default: expires off;Context: http,server,location,if in location 例/etc/nginx/conf.d/default.con......

Romanceling
49分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部