我会将一个表单放在ActiveWorkbook中,如何获取工作簿的屏幕/窗口位置?
答案 0 :(得分:1)
C#示例..
private void setFormPos(Form frm)
{
int top = Application.Top + Application.PageSetup.TopMargin + Application.PageSetup.HeaderMargin + Application.Commandbars["Ribbon"].Height;
int left = Application.Left + Application.PageSetup.LeftMargin;
frm.Left = (left / 2);
frm.Top = (top / 2);
}
答案 1 :(得分:0)
没有找到一个好的解决方案,但找到了一个可接受的解决方案:
int top = Application.Top + Application.PageSetup.TopMargin + Application.PageSetup.HeaderMargin + Application.Commandbars["Ribbon"].Height;
int left = Application.Left + Application.PageSetup.LeftMargin;
Form popup = new Form{ Top = top, Left = left, StartPosition = FormStartPosition.Manual, Width=400, Height=300};
popup.Show();