网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
反查漢字拼音
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式

var
  iHandleCount: integer;
  pList: array[1..nHKL_LIST] of HKL;
  szImeName: array[0..254] of char;
  i: integer;
  sFound: string;
begin
  lstComposition.Items.Clear;
  iHandleCount := GetKeyboardLayoutList(nHKL_LIST, pList);
  for i := 1 to iHandleCount do
  begin
    if ImmEscape(pList[i], 0, IME_ESC_IME_NAME, @szImeName) > 0 then
    begin
      sFound := QueryCompStr(pList[i], edtExam.Text);
      if sFound <> '''' then
        lstComposition.Items.Add(StrPas(szImeName) + '': '' + sFound);
    end;
  end;
**************
金山词霸(2.0-2000版本)内有gb2py.idx和gbk2py.idx,内有国标
GB、GBK的每个汉字的拼音和声调。可用拿来一用。

下面上Delphi写的gb2py函数。
function gb2py(hanzi:pchar):pchar;
var
Sfile:Tmemorystream;
pos,temp,ipos,len:integer;
py:array[0..20] of char;
begin
  pos:=($fe-$a1)*(ord(hanzi[0])-$b0)+ord(hanzi)-$a1;
  sfile:=Tmemorystream.create;
  sfile.loadfromfile(''C:\Program Files\KINGSOFT\XDICT\gb2py.idx'');
  //data:=sfile.memory;
  sfile.Seek($1608+pos*4,soFromBeginning);
  sfile.Read(ipos,4);
  sfile.Read(temp,4);
  len:=temp-ipos;
  sfile.Seek(ipos+1,soFromBeginning);
  sfile.Read(py,len);
  py[len-1]:=#0;
  sfile.Free;
  result:=py;
end;

  • 下一篇资讯: 如何改变Delphi的快捷键
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号