那位高人请回答:(银子全部送上)(200分)

  • 主题发起人 主题发起人 qqaa
  • 开始时间 开始时间
Q

qqaa

Unregistered / Unconfirmed
GUEST, unregistred user!
那位高人请回答:(银子全部送上)

TOleContainer插入rtf格式的带图片时,为何背景总为灰色?已将color设为白色。
 
就为这个问题你新开一个帐号?
 
wjiachun,有本事的话你来解决好了,别只会说风凉话!
 
抱歉,我没有说风凉话,有没有本事我自己明白.
 
这个问题简单,
你不要用TOleContainer,
而直接便用OLE,就可以了。
 
靠,不要吵架。
我也研究了很久,没有用。
看来要直接改一些底层的东西。
 
不要吵,老猫负责维护论坛,当然不希望大家随便开帐号和开新贴,
现在论坛水分太多,希望同志们自己注意,随便这样做不好。

而且,始终用自己的帐号,还可以和大家混个“脸儿熟”,这样即使
分数不多,大家也会乐意回答的。
 
试试ahm的ahm的TAHMRTFFile,不过我没试过:-(
 
这个问题并不复杂,通过改Source可以解决了。

OleCtnrs.pas
修改paint方法:第1863行

unit OleCtnrs;
....

Canvas.Brush.Style := bsSolid;
Canvas.Brush.Color := Color;
{将原来的画框语句去掉}
// DrawEdge(Canvas.Handle, CR, EDGE_SUNKEN, Flags or BF_MIDDLE);
{自己画:*********uses extctrls}
FRAME3D(Canvas,CR,clBtnShadow,clBtnHighlight,1);
FRAME3D(Canvas,CR,clBlack,clLtGray,1);
{END*********}
if FOleObject <> nil then
begin
....


 
接受答案了.
 
楼上的说的不对,在Paint过程中,
DrawEdge(Canvas.Handle, CR, EDGE_SUNKEN, Flags or BF_MIDDLE);后面直接加
FillRect(R);就可以了
 

Similar threads

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