2017-10-20 187 views
0

我正在开发PowerPoint的插件。我想将创建的用户窗体放置在基于某个PowerPoint形状的位置的屏幕上,用户窗体应放置在形状上方。我设法为Excel找到了可能有用的方法:application.usedwidth application.usedheight,activewindow.usedheight和activewindow.usedwidth,但我找不到用于PowerPoint的此类方法。 有什么办法可以将PowerPoint形状位置“转换”为用户窗体位置吗?是否有可能检查所有使用的任务面板的宽度和高度,以确定滑块等“窗格”的位置?如何根据形状的位置放置用户表单

回答

0

前段时间我设法做到了。

private void UpdatePosition(PPT.Shape shape, PPT.Presentation pres) 
{ 
this.Left = pres.Application.ActiveWindow.PointsToScreenPixelsX((float)(0 + shape.left + 0.5 * shape.Width)) - (0.5 * this.Width); 
this.Top = pres.Application.ActiveWindow.PointsToScreenPixelsY((float)(0 + shape.Top - 20)) - this.Height; 
}