代码插入图片ImageInsert(activeX14)
请问版主 用代码插入图片文件,如何能插在光标所在的位置 TXTextControl.ImageInsert FileName, TextPos, Alignment, PosX, PosY, ScaleX, ScaleY, TextFlow, DistanceL, DistanceT, DistanceR, DistanceB我如何获得当前鼠标所在位置的PosX,PosY 你是什么时机做的这件事? 这个时机:右键调出菜单,选择插入图片 那你是不是有mouseclick事件,其中获取鼠标位置。
另外一个办法是去textcontrol的selection信息。 我在 mousedown事件中从参数获得ocx_x,ocx_y,但把这个值放到(TXTextControl.ImageInsert FileName, TextPos, Alignment, PosX, PosY, ScaleX, ScaleY, TextFlow, DistanceL, DistanceT, DistanceR, DistanceB)的PosX, PosY,插入的位置不对,是不是单位不对的原因,如果是如何将ocx_x,ocx_y转换一下 肯定要转换,一方面是单位不同,TX的单位是“提”(twips,200 twips 等于10 point),另一方面,事件中的位置应该是相对整个窗口的,不是相对于控件的。所以你还要自己算一下便宜量。
procedure TForm1.Insert1Click(Sender: TObject);
begin OpenDialog1.Title := 'Insert Image';
OpenDialog1.Filename := '';
OpenDialog1.Filter := TXTextControl1.ImageFilters;
OpenDialog1.FilterIndex := 1;
OpenDialog1.Options := ;
if OpenDialog1.Execute then begin try TXTextControl1.ImageInsert(OpenDialog1.Filename,-1, 1, 0, 0, 100, 100, 3, 0, 0, 0, 0);
except MessageDlg('Cannot insert image: ' + OpenDialog1.filename + '.', mtError, , 0);
end;
end;
end;
页:
[1]