Delphirus - прграммирование на delphi
   Все о delphi Delphirus - прграммирование на delphi
blocks.gif
Навигация
 

Главная
Статьи
Базы данных
Графика
Защита
Интернет
Система
Тексты
Мультимедиа
Файлы
Формы и окна
Другое
Советы
Базы данных
Графика
Интернет
Мультимедиа
Система
Тексты
Файлы
Файлы
Исходники
Компоненты
Инфо
Поиск по сайту
Обратная связь
Самое популярное
Аккаунт
Карта сайта

 
 
 

Советы по delphi \ Система \ Реестр \ Сохранить объект TFont в реестре

Сохранить объект TFont в реестре

uses Registry;

procedure SaveFontToRegistry(Font : TFont; SubKey : string);
var
  R : TRegistry;
  FontStyleInt : byte;
  FS : TFontStyles;
begin
  R:=TRegistry.Create;
  try
    FS:=Font.Style;
    Move(FS,FontStyleInt,1);
    R.OpenKey(SubKey,True);
    R.WriteString('Font Name',Font.name);
    R.WriteInteger('Color',Font.Color);
    R.WriteInteger('CharSet',Font.Charset);
    R.WriteInteger('Size',Font.Size);
    R.WriteInteger('Style',FontStyleInt);
  finally
    R.Free;
  end;
end;

function ReadFontFromRegistry(Font : TFont; SubKey : string) : boolean;
var
  R : TRegistry;
  FontStyleInt : byte;
  FS : TFontStyles;
begin
  R:=TRegistry.Create;
  try
    result:=R.OpenKey(SubKey,false);
    if not result then
      exit;
    Font.name:=R.ReadString('Font Name');
    Font.Color:=R.ReadInteger('Color');
    Font.Charset:=R.ReadInteger('CharSet');
    Font.Size:=R.ReadInteger('Size');
    FontStyleInt:=R.ReadInteger('Style');
    Move(FontStyleInt,FS,1);
    Font.Style:=FS;
  finally
    R.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if FontDialog1.Execute then
    SaveFontToRegistry(FontDialog1.Font, 'Delphi KingdomFonts');
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  NFont : TFont;
begin
  NFont:=TFont.Create;
  if ReadFontFromRegistry(NFont,'Delphi KingdomFonts') then
  begin
    //здесь добавить проверку - существует ли шрифт
    Label1.Font.Assign(NFont);
    NFont.Free;
  end;
end;

Название: Сохранить объект TFont в реестре
Дата публикации: 2004-09-09 (2335 Прочтено)

 
 

 

Page generation 0.035 seconds