This might be of help (work your way through it)
procedure TPlayerForm.UpdateLanguage;
var
  LanFile: TIniFile;
  offset: Cardinal;
  S: string;
begin
     //Open language file
  LanFile := TIniFile.Create(AppPath + CurrentLanguage + '.ini');

     //Update PlayerForm menu
  offset := Cardinal(@menuAbout);
  while offset <= Cardinal(@menuPlayList) do
  begin
    S := LanFile.ReadString('PlayerForm', PTMenuItem(offset)^.Name, '');
    if S <> '' then PTMenuItem(offset)^.Caption := S;
    offset := offset + sizeof(PTMenuItem);
  end;

     //Update ListForm menu
  offset := Cardinal(@ListForm.menuAddFiles);
  while offset <= Cardinal(@ListForm.menuClearPlaylist) do
  begin
    S := LanFile.ReadString('ListForm', PTMenuItem(offset)^.Name, '');
    if S <> '' then PTMenuItem(offset)^.Caption := S;
    offset := offset + sizeof(PTMenuItem);
  end;

  if CurrentFont <> nil then CurrentFont.Free;
  CurrentFont := TFont.Create;

     //update ListForm toolbar
     //set font name and size
  CurrentFont.Name := LanFile.ReadString('General', 'FontName', 'MS Sans
Serif');
  CurrentFont.Size := LanFile.ReadInteger('General', 'FontSize', 7);
  CurrentFont.Charset := DEFAULT_CHARSET;
  if CurrentLanguage = 'Chinese' then CurrentFont.Charset := GB2312_CHARSET;
  if CurrentLanguage = 'Japanese' then CurrentFont.Charset :=
SHIFTJIS_CHARSET;
  if CurrentLanguage = 'Korean' then CurrentFont.Charset := HANGEUL_CHARSET;
  if CurrentLanguage = 'Big5' then CurrentFont.Charset :=
CHINESEBIG5_CHARSET;

---------------------------------------------------------------------------
    New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
                  Website: http://www.delphi.org.nz

Reply via email to