程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 在Delphi中實現將Font.Style寫入INI文件

在Delphi中實現將Font.Style寫入INI文件

編輯:Delphi

前不久我編寫一個小程序在INI文件中記錄字體的屬性(顏色值/color,大小/size,字體名/name,樣式/style),其中color值和size值可以用數值方式寫入INI文件,name是用字符方式寫入,但Font.style不是數值型、字符型,也不是布爾型,而是TfontStyles類,無法直接寫入INI文件中去,我找了好多相關書籍也沒找到方法,也到網絡上的Delphi站點去問,也沒得到滿意的答復,沒法子,看來還得自已想辦法解決,我通過一系列的摸索實驗,終於找到了比較滿意的解決方法,程序代碼如下:

1、先在uses中加入 inifiles;

2、定義變量

var
Mystyle : string;
Myini : inifile;
3、寫
begin
Mystyle := [;
Myini := TInifile.Create (inifile.ini);
with FontDialog.Font do
begin
if fsBold in Style then MyStyle := MyStyle + fsBold;
if fsItalic in Style then
if MyStyle = [ then
MyStyle := MyStyle + fsItalic
else
MyStyle := MyStyle + ,fsItalic;
if fsUnderline in Style then
if MyStyle = [ then
MyStyle := MyStyle + fsUnderline
else
MyStyle := MyStyle + ,fsUnderline;
if fsStrikeOut in Style then
if MyStyle = [ then
MyStyle := MyStyle + fsStrikeOut
else
MyStyle := MyStyle + ,fsStrikeOut;
MyStyle := MyStyle + ];
end;
Myini.WriteString (FontStyle, style, MyStyle);
Myini.free;
End;

4、讀:

var
MyFontStyle : TFontStyles;
MyStyle : string;
begin
MyFontStyle := [];
Myini := TInifile.Create (inifile.ini);
Mystyle := Myini.ReadString (Fontstyle, style, []);
if pos (fsBold, Mystyle) $#@62; 0 then MyFontStyle := MyFontStyle + [fsBold];
if Pos (fsItalic, MyStyle) $#@62; 0 then MyFontStyle := MyFontStyle + [fsItalic];
if Pos (fsUnderline, MyStyle) $#@62; 0 then
MyFontStyle := MyFontStyle + [fsUnderline];
if (fsStrikeOut, MyStyle) $#@62; 0 then
MyFontStyle := MyFontStyle + [fsStrikeOut];
FontDialog.Font.Style := MyFontStyle;
MyIni.free;
end;

以上代碼在Delphi 4.0 運行通過。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved