Вывод в другое окно
Есть ли способ направить форму в VB.NET, чтобы открыть и развернуть во втором мониторе. То есть, если отображаются два монитора, чтобы загрузка формы во втором окне была максимизирована по умолчанию?
Скажем, программа была сделана с двумя формами, а к компьютеру подключены два монитора.
Я хочу, чтобы FormA показывался в MonitorA по умолчанию, а FormB показывался в MonitorB в развернутом виде по умолчанию.
РЕДАКТИРОВАТЬ: далее отредактировано для ясности.
1 ответ
Первым делом нужно получить информацию о доступных экранах. Вы можете получить это от Screen.AllScreens
, Далее необходимо определить, сколько существует экранов (обратите внимание, что их может быть больше двух). Затем вам нужно решить, как определить "второй" экран (например, первый, который, где Primary
свойство false
,
Когда это будет сделано, я думаю, что самый простой способ - это переместить форму в место, которое находится внутри Bounds
желаемого экрана, а затем разверните его.
Вот пример метода, который открывает максимизированную форму на указанном экране:
public static void ShowMaximizedOnScreen(Screen screen, Form form)
{
form.Location = screen.Bounds.Location;
form.WindowState = FormWindowState.Maximized;
form.StartPosition = FormStartPosition.Manual;
form.Show();
}