to trainbox(战友战友亲如兄弟):好象不是integer,也不是string,该如何办呢?
解决方案 »
- 大哥哥,大姐姐,动画的图片如何进行点阵(比如在LED屏上显示一只鸟儿在飞)?
- dbgrideh复选框如何默认不选中?
- delphi 控件如何初始化?
- 在delphi中如何区分表和视图
- 高分求助:WebBrowser浏览页面,怎样控制window.close弹出的窗口?
- [求助]一个Grid的处理逻辑
- frame能动态更新吗?
- 我用QuickRep的报表为什么最大化的时候不是满屏?
- 求高难度算法
- 能用中文给我举例说明一下virtual和override的意思吗?
- 使用過 devExpress 控件組中TdxDBGrid 控件的朋友,進來看一下好碼!
- ODBC的C程序翻译至Delphi的Pas程序, 求救!!!
TFontStyle = (fsBold, fsItalic, fsUnderline, fsStrikeOut);
TFontStyles = set of TFontStyle;
集合类型,实际上它的实现很可能是数字形式。但好像没法强制转换!
var Str:String;
begin
if fsBold in Font.Style then
begin
Str:='fsBold/';
end
if fsItalic in Font.Style then
begin
Str:=Str+'fsItalic/';
end;
if fsUnderline in Font.Style then
begin
Str:=Str+'fsUnderline/';
end;
if fsStrikeOut in Font.Style then
begin
Str:=Str+'fsStrikeOut/';
end;
iniFile.WriteSting('Font','Style',Str);
end;
读出的时候,则判断你读出的那个字串有没有这四个字串,有则字体的style就加上一个style,当然,这是比较烂的方法,但可以解决问题!
p: PInteger;
begin
p:=PInteger(@Form.Style);
ini.writeinteger(....p^....);
end;
var
p: PInteger;
begin
p:=PInteger(@Form.Style);
ini.writeinteger('form','style',p^);
end;
var
p: PInteger;
begin
p:=PInteger(@Font.Style);
ini.writeinteger('font','style',p^);
end;
var
p: PInteger;
begin
p:=PInteger(@Font.Style);//取地址,并强制转换为整型指针
ini.writeinteger('font','style',p^);
end;
问你一个问题,回答问题就是你的工作?
p: PInteger;
fs: TFontStyles;
begin
fs:=Font.style;
p:=PInteger(@fs);
ini.writeinteger('font','style',p^);
end;
p: PInteger;
fs: TFontStyles;
begin
p:=@fs;
ini.readinteger('font','style',p^);
Font.style:=fs;
end;
p: PInteger;
fs: TFontStyles;
begin
p:=@fs;
p^:=ini.readinteger('font','style',0);
Font.style:=fs;
end;