当我的应用程序关闭时,我试图保存 System::Windows::Forms::Form
的状态。我可以毫无问题地记录窗口的大小、位置和窗口状态,但如果窗口在关闭时最大化,则 ::Size
成员会记录窗口的最大化大小。
有什么方法可以记录非最大化大小,还是需要拦截最大化事件并手动记录?
最佳答案
这并不容易获得,您必须 P/Invoke GetWindowPlacement。最好的方法是仅在窗体处于正确状态时记录窗口大小。例如:
protected override void OnResize(EventArgs e) {
if (this.WindowState == FormWindowState.Normal)
Properties.Settings.Default.WindowSize = this.Size;
base.OnResize(e);
}
关于winforms - 如何获取表单的非最大化窗口大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3102311/