Я использую C# WinForm для разработки приложения уведомления SMAN. Я хотел бы разместить основную форму в правом нижнем углу рабочей области экрана. В случае нескольких экранов есть способ найти самый правый экран, на котором разместить приложение, или, по крайней мере, помнить последний использованный экран и закрепить форму в правом нижнем углу?Позиция формы в правом нижнем углу экрана
9
A
ответ
21
Я в настоящее время не имеется несколько экранов, чтобы проверить, но это должно быть что-то вроде
public partial class LowerRightForm : Form
{
public LowerRightForm()
{
InitializeComponent();
}
protected override void OnLoad(EventArgs e)
{
PlaceLowerRight();
base.OnLoad(e);
}
private void PlaceLowerRight()
{
//Determine "rightmost" screen
Screen rightmost = Screen.AllScreens[0];
foreach (Screen screen in Screen.AllScreens)
{
if (screen.WorkingArea.Right > rightmost.WorkingArea.Right)
rightmost = screen;
}
this.Left = rightmost.WorkingArea.Right - this.Width;
this.Top = rightmost.WorkingArea.Bottom - this.Height;
}
}
8
Override Форму Onload
и установить новое место:
protected override void OnLoad(EventArgs e)
{
var screen = Screen.FromPoint(this.Location);
this.Location = new Point(screen.WorkingArea.Right - this.Width, screen.WorkingArea.Bottom - this.Height);
base.OnLoad(e);
}
2
//Get screen resolution
Rectangle res = Screen.PrimaryScreen.Bounds;
// Calculate location (etc. 1366 Width - form size...)
this.Location = new Point(res.Width - Size.Width, res.Height - Size.Height);
0
int x = Screen.PrimaryScreen.WorkingArea.Right - this.Width;
int y = Screen.PrimaryScreen.WorkingArea.Bottom - this.Height;
// Add this for the real edge of the screen:
x = 0; // for Left Border or Get the screen Dimension to set it on the Right
this.Location = new Point(x, y);
Смежные вопросы
- 1. Позиция окна уведомления в правом нижнем углу
- 2. Позиция div в нижнем правом углу изображения
- 3. Размещение таблицы в правом нижнем углу экрана
- 4. Показать форму в правом нижнем углу экрана?
- 5. Окно позиции в нижнем правом углу экрана
- 6. Положение изображения в правом нижнем углу формы
- 7. Окно в правом нижнем углу
- 8. Форма позиции в правом нижнем углу экрана в визуальном базисе
- 9. Позиция элемента в нижнем правом углу текущего окна
- 10. Окно Tkinter в правом нижнем углу
- 11. Как запустить приложение в правом нижнем углу?
- 12. Xamarin layout Как разместить ярлык в левом нижнем углу и в правом нижнем углу экрана
- 13. Свинг-всплывающее окно, расположенное в правом нижнем углу экрана окна
- 14. Как открыть всплывающее окно в правом нижнем углу экрана
- 15. Приложение HTA: поместите окно в нижнем правом углу экрана
- 16. jQuery, bPopup - как разместить всплывающее окно в правом нижнем углу?
- 17. Выровнять медиа в правом нижнем углу
- 18. Align H1 в правом нижнем углу DIV
- 19. Применить изображение в правом нижнем углу
- 20. Выравнивание Div в правом нижнем углу
- 21. Фоновое изображение в правом нижнем углу?
- 22. CSS «+» в правом нижнем углу элемента
- 23. плавающей кнопки в правом нижнем углу Ionic2
- 24. Совместите кнопку в нижнем правом углу входа
- 25. Место div в нижнем правом углу
- 26. ионный слайдер пейджер в нижнем правом углу
- 27. Imagemagick место изображение в нижнем правом углу
- 28. Align ImageView в правом нижнем углу LinearLayout
- 29. curses call addch в правом нижнем углу
- 30. Выравнивание FAB в нижнем правом углу
Или 'var rightmost = Screen.AllScreens.OrderBy (s => s.WorkingArea.Right) .Last();' –
@GertArnold Я знаю, что MoreLINQ имеет 'MaxBy 'чтобы быть наиболее эффективным, но если мне приходится опасаться, что' OrderByDescending.First' должен быть более эффективным, чем 'OrderBy.Last'. – nawfal