Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

Как сохранить объект TFont в реестре   Найти похожие ветки 

 
KaLLeKa   (2004-07-25 17:21) [0]

Не могу сохранить шрифт в реестре. Помогите пожалуйста.


 
Кириешки ©   (2004-07-25 17:44) [1]

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
begin
SaveFontToRegistry(FontDialog1.Font,"Delphi Kingdom\Fonts");
end;
end;

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

Надеюсь ничего непонятного не будет (Если ты не из тех кто получив ответ не читая кода просто вставляет его в программу).



Страницы: 1 вся ветка

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
14-1090242201
pasha_golub
2004-07-19 17:03
2004.08.08
Шахматы: извращения, байки, приколы и т.д.


1-1090449411
Adil
2004-07-22 02:36
2004.08.08
Как поставить в RichEDIT рисунку?


1-1090839912
ShimON
2004-07-26 15:05
2004.08.08
Dll and TreeView


6-1086536179
ilias
2004-06-06 19:36
2004.08.08
Пароль и логин при dial-up дозвоне


14-1090245547
Ega23
2004-07-19 17:59
2004.08.08
Коллеги, подскажите форум.