想问问关于Mapobjects2的一个小问题(50分)

  • 主题发起人 主题发起人 xindijing
  • 开始时间 开始时间
X

xindijing

Unregistered / Unconfirmed
GUEST, unregistred user!
想问问Mapobjects2的一个小问题:
我想在Delphi6中进行GIS的开发,用到了Mapobjects2.
在用Mapobjects2的IMoTextSymbol时,不知道怎么将变量赋予IMoTextSymbol的Font属性。
例如:

var
sym:TextSymbol;
begin
sym:=TextSymbol(CreateOleObject('MapObjects2.TextSymbol'));
sym.Font:=???;//就是这里,我应该将什么样的Font对象/变量赋予sym.Font?
...
end;

在VB6是这样实现的:
...
dim sym as New TextSymbol
Dim txtFont As New StdFont '注意这里!
txtFont.name = textfont
txtFont.size = textsize
Set sym.Font = txtFont '实现了对象的赋值
...

在VB里可以将txtFont 定义成StdFont,在Delphi6里呢?

请教各位高手了!
 
sym1.font := IFontDisp(IDispatch(oleFt)); //需要在 uses 中添加 ActiveX
 
var oleFt: variant; //字体变量
 
谢谢两位,以上的问题解决了,是用了SetOleFont()函数将TextSymbol和TFont关联起来再修改TFont就OK了。小弟还有一个问题:
var
currectangle:Rectangle;
begin
currectangle:=Rectangle(CreateOleObject('Mapobjects2.Rectangle'));
currectangle := mapdisp.TrackRectangle;
end
为什么这里最后一行会返回空(nil)?
 
没有人会么?着急啊
 
可能是delphi6的问题,建议改用delphi7
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
923
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部