Delphi本身提供对Color,font,的调度,所以你可以直接设置IFONT接口的FONT属性具体的可以看一下书
解决方案 »
- 请问这样的grid要怎么实现呢?
- Delphi7死机怎么回事?
- 麻烦各位大虾帮忙解答一下????????急!!!!!!!!!!!!!!!!!!!!
- 用socket控件如何传递结构体?
- 一个困扰我很久的问题,高分求解!!!!!!
- 请问ICS控件包里的WSOCKET控件里用UDP协议发信息,请问有没有象INDY里的IDUDPCLIENT控件
- 请问delphi 5.0 编程环境中view菜单中的 type library 一项为什么不可选(灰色)?
- 如何将多个stringlist里的值写入文本文件??
- 问两个socket编程的问题(刚开始socket编程的)
- CUSTEM页面设置害了我----QuickReport 3.0.7 的大BUG: WIN2000中可以打印而WIN98中不能打印,怎么办?
- 如何实现TMediaPlayer控件的全屏显示?
- 急。。。。有关ADODataSet的问题。。
我试过 IFont*,但不知道还要什么代码,买不起书看...
fnt:tfont;
begin
fnt:=iinterface1.Font;
form1.Font:=fnt;
end;
在你的myimage中定义的myfont属性,设其类型为ifont不就可以了???
ComObj, ActiveX,windows, Project1_TLB,Graphics, StdVcl;type
TFontX=Class(TFont,IFont)
protected
function get_Name(out name: WideString): HResult; stdcall;
function put_Name(name: WideString): HResult; stdcall;
function get_Size(out size: Currency): HResult; stdcall;
function put_Size(size: Currency): HResult; stdcall;
function get_Bold(out bold: BOOL): HResult; stdcall;
function put_Bold(bold: BOOL): HResult; stdcall;
function get_Italic(out italic: BOOL): HResult; stdcall;
function put_Italic(italic: BOOL): HResult; stdcall;
function get_Underline(out underline: BOOL): HResult; stdcall;
function put_Underline(underline: BOOL): HResult; stdcall;
function get_Strikethrough(out strikethrough: BOOL): HResult; stdcall;
function put_Strikethrough(strikethrough: BOOL): HResult; stdcall;
function get_Weight(out weight: Smallint): HResult; stdcall;
function put_Weight(weight: Smallint): HResult; stdcall;
function get_Charset(out charset: Smallint): HResult; stdcall;
function put_Charset(charset: Smallint): HResult; stdcall;
function get_hFont(out font: HFont): HResult; stdcall;
function Clone(out font: IFont): HResult; stdcall;
function IsEqual(const fontOther: IFont): HResult; stdcall;
function SetRatio(cyLogical, cyHimetric: Longint): HResult; stdcall;
function QueryTextMetrics(out tm: TTextMetricOle): HResult; stdcall;
function AddRefHfont(font: HFont): HResult; stdcall;
function ReleaseHfont(font: HFont): HResult; stdcall;
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
function _AddRef: Integer; stdcall;
function _Release: Integer; stdcall;
end;
TTestFont = class(TAutoObject, ITestFont)
protected
procedure Font(const Value: IFont); safecall;
{ Protected declarations }
end;implementationuses ComServ,Unit1;procedure TTestFont.Font(const Value: IFont);
var
XFont:TFontX;
p:pointer;
begin
XFont:=p;
p:=XFont;
Form1.Font:=p;
end;
function TFontX.get_Name(out name: WideString): HResult; stdcall;
begin
name:=Self.Name;
end;
function TFontX.put_Name(name: WideString): HResult; stdcall;
begin
self.Name:=Name;end;
Function TFontX.get_Size(out size: Currency): HResult; stdcall;
begin
self.Size:=size;
end;
function TFontX.put_Size( size: Currency): HResult; stdcall;
begin
self.Size:=size;
end;initialization
TAutoObjectFactory.Create(ComServer, TTestFont, Class_TestFont,
ciMultiInstance, tmApartment);
end.
你吧TFontX的方法全实现了就可以这样用了,没时间来搞现在转告软件工程了!
obj2.property2 = x看来还得多看些书