使用多个监视器 c# 最大化无边界窗体
Maximizing borderless form with multiple monitors c#
我目前正在使用 Doubleclick 事件制作无边框表单以最大化表单。但我意识到该表格不会在其他两个屏幕上最大化,只有我的主要中间屏幕。
所以我的代码目前是:
private void Form1_DoubleClick(object sender, EventArgs e)
{
if ((this.Height == Screen.PrimaryScreen.WorkingArea.Height) && (this.Width == Screen.PrimaryScreen.WorkingArea.Width))
{
this.Width = 534;
this.Height = 600;
CenterToScreen();
}
else
{
this.Height = Screen.PrimaryScreen.WorkingArea.Height;
this.Width = Screen.PrimaryScreen.WorkingArea.Width;
this.Location = Screen.PrimaryScreen.WorkingArea.Location;
}
}
它可能看起来很奇怪,但我用它来不覆盖任务栏。
我需要这样的代码将它停靠在一边,并用它来计算表单的位置。看起来像这样:half right screen dock
当我单击这 9 个按钮中的一个时,它会将屏幕停靠在屏幕的不同位置。在角落,半个屏幕或中间。
我尝试使用代码让表单检测它在哪个屏幕上,然后再次使用它来最大化该屏幕上的表单,但是我得到了一堆红线,而且它在结束。
我有 3 个显示器。
请帮忙。
您将其硬编码到主屏幕,即带有任务栏的屏幕。为了让其他屏幕获取表单当前正在调整的屏幕。
private void Form1_DoubleClick(object sender, EventArgs e)
{
if ((this.Height == Screen.FromControl(this).WorkingArea.Height) && (this.Width == Screen.FromControl(this).WorkingArea.Width))
{
this.Width = 534;
this.Height = 600;
CenterToScreen();
}
else
{
this.Height = Screen.FromControl(this).WorkingArea.Height;
this.Width = Screen.FromControl(this).WorkingArea.Width;
this.Location = Screen.FromControl(this).WorkingArea.Location;
}
}
我目前正在使用 Doubleclick 事件制作无边框表单以最大化表单。但我意识到该表格不会在其他两个屏幕上最大化,只有我的主要中间屏幕。 所以我的代码目前是:
private void Form1_DoubleClick(object sender, EventArgs e)
{
if ((this.Height == Screen.PrimaryScreen.WorkingArea.Height) && (this.Width == Screen.PrimaryScreen.WorkingArea.Width))
{
this.Width = 534;
this.Height = 600;
CenterToScreen();
}
else
{
this.Height = Screen.PrimaryScreen.WorkingArea.Height;
this.Width = Screen.PrimaryScreen.WorkingArea.Width;
this.Location = Screen.PrimaryScreen.WorkingArea.Location;
}
}
它可能看起来很奇怪,但我用它来不覆盖任务栏。 我需要这样的代码将它停靠在一边,并用它来计算表单的位置。看起来像这样:half right screen dock 当我单击这 9 个按钮中的一个时,它会将屏幕停靠在屏幕的不同位置。在角落,半个屏幕或中间。
我尝试使用代码让表单检测它在哪个屏幕上,然后再次使用它来最大化该屏幕上的表单,但是我得到了一堆红线,而且它在结束。
我有 3 个显示器。
请帮忙。
您将其硬编码到主屏幕,即带有任务栏的屏幕。为了让其他屏幕获取表单当前正在调整的屏幕。
private void Form1_DoubleClick(object sender, EventArgs e)
{
if ((this.Height == Screen.FromControl(this).WorkingArea.Height) && (this.Width == Screen.FromControl(this).WorkingArea.Width))
{
this.Width = 534;
this.Height = 600;
CenterToScreen();
}
else
{
this.Height = Screen.FromControl(this).WorkingArea.Height;
this.Width = Screen.FromControl(this).WorkingArea.Width;
this.Location = Screen.FromControl(this).WorkingArea.Location;
}
}