刚开始学习firemonkey,不太明白怎么回事。
出现以下提示:
[DCC Error] main_form.pas(38): E2065 Unsatisfied forward or external declaration: 'TMgl_dic_main.GetPYIndexChar'
[DCC Fatal Error] Mgl_dic.dpr(5): F2063 Could not compile used unit 'main_form.pas'
以下是源码:unit main_form;interfaceuses
System.SysUtils, Winapi.Windows, System.Types,
System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.Objects, FMX.Menus,
FMX.TabControl, FMX.Layouts, FMX.ListBox, FMX.Edit;type
TMgl_dic_main = class(TForm)
lang_qh: TTabControl;
h2m: TTabItem;
m2h: TTabItem;
han_edit: TEdit;
han_lst: TListBox;
mgl_list: TListBox;
StyleBook: TStyleBook;
search: TButton;
mgl_menu_panel: TPanel;
mgl_add: TButton;
mgl_top_Panel: TPanel;
mgl_banner_img: TImage;
SpeedButton1: TSpeedButton;
mgl_list_panle: TPanel;
mgl_search_Panel: TPanel;
mgl_edit: TEdit;
han_ScrollBox: TScrollBox;
mgl_ScrollBox: TScrollBox;
Edit1: TEdit;
procedure han_editChange(Sender: TObject);
private
{ Private declarations } public
{ Public declarations }
function GetPYIndexChar(hzchar: string): WCHAR; end;var
Mgl_dic_main: TMgl_dic_main;implementationuses db_conn;
{$R *.fmx}function GetPYIndexChar(hzchar: string): WCHAR;
begin // 的到一个汉字的拼音头个字母
case WORD(hzchar[1]) shl 8 + WORD(hzchar[2]) of
$B0A1 .. $B0C4:
result := 'A';
$B0C5 .. $B2C0:
result := 'B';
$B2C1 .. $B4ED:
result := 'C';
$B4EE .. $B6E9:
result := 'D';
$B6EA .. $B7A1:
result := 'E';
$B7A2 .. $B8C0:
result := 'F';
$B8C1 .. $B9FD:
result := 'G';
$B9FE .. $BBF6:
result := 'H';
$BBF7 .. $BFA5:
result := 'J';
$BFA6 .. $C0AB:
result := 'K';
$C0AC .. $C2E7:
result := 'L';
$C2E8 .. $C4C2:
result := 'M';
$C4C3 .. $C5B5:
result := 'N';
$C5B6 .. $C5BD:
result := 'O';
$C5BE .. $C6D9:
result := 'P';
$C6DA .. $C8BA:
result := 'Q';
$C8BB .. $C8F5:
result := 'R';
$C8F6 .. $CBF9:
result := 'S';
$CBFA .. $CDD9:
result := 'T';
$CDDA .. $CEF3:
result := 'W';
$CEF4 .. $D188:
result := 'X';
$D1B9 .. $D4D0:
result := 'Y';
$D4D1 .. $D7F9:
result := 'Z';
else
result := char(0);
end;
end;
procedure TMgl_dic_main.han_editChange(Sender: TObject);
begin
ShowMessage(GetPYIndexChar(han_edit.Text));
end;end.
出现以下提示:
[DCC Error] main_form.pas(38): E2065 Unsatisfied forward or external declaration: 'TMgl_dic_main.GetPYIndexChar'
[DCC Fatal Error] Mgl_dic.dpr(5): F2063 Could not compile used unit 'main_form.pas'
以下是源码:unit main_form;interfaceuses
System.SysUtils, Winapi.Windows, System.Types,
System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.Objects, FMX.Menus,
FMX.TabControl, FMX.Layouts, FMX.ListBox, FMX.Edit;type
TMgl_dic_main = class(TForm)
lang_qh: TTabControl;
h2m: TTabItem;
m2h: TTabItem;
han_edit: TEdit;
han_lst: TListBox;
mgl_list: TListBox;
StyleBook: TStyleBook;
search: TButton;
mgl_menu_panel: TPanel;
mgl_add: TButton;
mgl_top_Panel: TPanel;
mgl_banner_img: TImage;
SpeedButton1: TSpeedButton;
mgl_list_panle: TPanel;
mgl_search_Panel: TPanel;
mgl_edit: TEdit;
han_ScrollBox: TScrollBox;
mgl_ScrollBox: TScrollBox;
Edit1: TEdit;
procedure han_editChange(Sender: TObject);
private
{ Private declarations } public
{ Public declarations }
function GetPYIndexChar(hzchar: string): WCHAR; end;var
Mgl_dic_main: TMgl_dic_main;implementationuses db_conn;
{$R *.fmx}function GetPYIndexChar(hzchar: string): WCHAR;
begin // 的到一个汉字的拼音头个字母
case WORD(hzchar[1]) shl 8 + WORD(hzchar[2]) of
$B0A1 .. $B0C4:
result := 'A';
$B0C5 .. $B2C0:
result := 'B';
$B2C1 .. $B4ED:
result := 'C';
$B4EE .. $B6E9:
result := 'D';
$B6EA .. $B7A1:
result := 'E';
$B7A2 .. $B8C0:
result := 'F';
$B8C1 .. $B9FD:
result := 'G';
$B9FE .. $BBF6:
result := 'H';
$BBF7 .. $BFA5:
result := 'J';
$BFA6 .. $C0AB:
result := 'K';
$C0AC .. $C2E7:
result := 'L';
$C2E8 .. $C4C2:
result := 'M';
$C4C3 .. $C5B5:
result := 'N';
$C5B6 .. $C5BD:
result := 'O';
$C5BE .. $C6D9:
result := 'P';
$C6DA .. $C8BA:
result := 'Q';
$C8BB .. $C8F5:
result := 'R';
$C8F6 .. $CBF9:
result := 'S';
$CBFA .. $CDD9:
result := 'T';
$CDDA .. $CEF3:
result := 'W';
$CEF4 .. $D188:
result := 'X';
$D1B9 .. $D4D0:
result := 'Y';
$D4D1 .. $D7F9:
result := 'Z';
else
result := char(0);
end;
end;
procedure TMgl_dic_main.han_editChange(Sender: TObject);
begin
ShowMessage(GetPYIndexChar(han_edit.Text));
end;end.
解决方案 »
- delphi6在winxp下安装不了
- 紧急求教----请问书店的图书管理系统和防盗系统(磁处理)一套价格是多少?开发周期多长?磁处理使用的是贴磁条,还是其他方法?
- 菜单小问题!!!在线等待!!!
- delphi模拟鼠标遇到的问题路过的进来看看
- 自定义组件在Free时,重复调用Destroy,在线等待解决,高分回报
- 怎么一次删除dbgrid中的多行数据?
- 超简单的问题:如何判断一串字符串中是否含有非数字的东西(我还是在等待)
- 如何把dbgrid的datasource设置为空
- 高分寻求判断数据重复性的方法。
- 如何获得数据集中数据表的某个字段类型?
- 反编译后,通过汇编还能看出来原来的算法吗?
- 请问Delphi导入xls数据时,WorkBook.WorkSheets[1].UsedRange.Rows.Count数据行不准确如何解决?;
...
public
{ Public declarations }
function GetPYIndexChar(hzchar: string): WCHAR;
end;但下面函数名前又没加上TMgl_dic_main的类名:
function GetPYIndexChar(hzchar: string): WCHAR;