我正在第二个监视器上显示一个表单(使用this reference),并且需要使其居中显示。
这是我最后的尝试,但没有成功。我该如何实现?
MonitorForm.Left := (mInfo.rcWork.Width - MonitorForm.Width) div 2;
MonitorForm.Top := (mInfo.rcWork.Height - MonitorForm.Height) div 2;
答案 0 :(得分:3)
您需要考虑显示器在整个桌面尺寸中的位置(左/上):
MonitorForm.Left := mInfo.rcWork.Left + (mInfo.rcWork.Width - MonitorForm.Width) div 2;
MonitorForm.Top := mInfo.rcWork.Top + (mInfo.rcWork.Height - MonitorForm.Height) div 2;