在日常工作和生活中我們經常使用電子記事本查找個人通訊錄信息
原理很簡單
程序更簡單
控件類型 屬性名稱 屬性值
Edit Name Search
ListBox Name SourceList
Items 輸入一些字符串
ListBox Name ResultList
// 獲取指定漢字的拼音索引字母
function GetPYIndexChar( hzchar:string):char;
begin
case WORD(hzchar[
$B
$B
$B
$B
$B
$B
$B
$B
$BBF
$BFA
$C
$C
$C
$C
$C
$C
$C
$C
$CBFA
$CDDA
$CEF
$D
$D
else
result := char(
end;
end;
// 在指定的字符串列表SourceStrs中檢索符合拼音索引字符串
PYIndexStr的所有字符串
function SearchByPYIndexStr
( SourceStrs:TStrings;
PYIndexStr:string):string;
label NotFound;
var
i
hzchar :string;
begin
for i:=
begin
for j:=
begin
hzchar:=SourceStrs[i][
+ SourceStrs[i][
if (PYIndexStr[j]<>
(UpperCase(PYIndexStr[j]) <>
GetPYIndexChar(hzchar)) then goto NotFound;
end;
if result=
else result := result + Char
(
NotFound:
end;
end;
procedure TForm
var ResultStr:string;
begin
ResultStr:=
ResultList
(Sourcelist
end;
在編輯框Search中輸入要查詢字符串的拼音首字符序列
本程序在Delphi
From:http://tw.wingwit.com/Article/program/Delphi/201311/24877.html