刚开始学习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.