Sto usando C# WinForm per sviluppare un'app di notifica sman. Vorrei posizionare il modulo principale nell'angolo in basso a destra dell'area di lavoro dello schermo. In caso di più schermi, c'è un modo per trovare lo schermo più a destra dove posizionare l'app, o almeno ricordare l'ultima schermata utilizzata e palce il modulo nell'angolo in basso a destra?Posizione modulo nell'angolo in basso a destra dello schermo
9
A
risposta
21
Io attualmente non hanno più display per controllare, ma dovrebbe essere qualcosa di simile a
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
sovrascrivere il modulo Onload
e impostare la nuova posizione:
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);
Problemi correlati
- 1. Modulo di posizione nell'angolo in basso a destra dello schermo in visual basic
- 2. Google map in basso a destra posizione
- 3. Posiziona WinForm in basso a destra
- 4. Android: allinea il pulsante in basso a destra dello schermo utilizzando FrameLayout?
- 5. Fix DIV al basso a destra
- 6. come impostare il frame principale wxPython in basso a destra sullo schermo?
- 7. Mettere JButton in basso a destra
- 8. Posizione dello schermo di una QGraphicsItem
- 9. Ridimensiona la finestra senza bordi nell'angolo in basso a destra
- 10. come rilevare la posizione dello scroll nestedscrollview android in basso?
- 11. Come rendere un DIV sempre mobile sullo schermo nell'angolo in alto a destra?
- 12. Come visualizzare la legenda nell'angolo in basso a destra anziché in alto a destra?
- 13. scorrimento visualizzatore di ridimensionamento (in basso a destra) in WPF
- 14. Modifica la transizione dell'orientamento dello schermo da destra a sinistra in Verticle Slider in Android
- 15. Posizione legenda in alto a destra per una carta C3?
- 16. Transizione CSS tra sinistra -> destra e in alto -> posizioni in basso
- 17. CSS: come posizionare l'elemento in basso a destra?
- 18. Createjs Shadow solo a destra e in basso
- 19. Android, a nido d'ape e ICS - Relazione dimensioni dello schermo senza pulsanti in basso
- 20. posizione relativa e destra
- 21. Posizione elenco a discesa Bootstrap (Su/Basso) in base all'altezza del documento
- 22. Riferimento altezza e larghezza dello schermo in vb.net
- 23. Posizione MBProgressHUD nella parte inferiore/superiore dello schermo
- 24. Come ottenere la posizione centrale dello schermo su google map?
- 25. Prendi posizione dal centro dello schermo Swift MapKit
- 26. Come ottenere la posizione dello schermo di un elemento Swing?
- 27. Cattura dello schermo in Haskell?
- 28. Posizione sfondo CSS in alto a destra aggiungi un margine?
- 29. Datatables: casella di ricerca posizione in alto a destra
- 30. Posizione ggplot title in alto a destra della trama
Oppure 'var rightmost = Screen.AllScreens.OrderBy (s => s.WorkingArea.Right) .Last();' –
@GertArnold So che MoreLINQ ha 'MaxBy 'Per essere più efficiente ma se devo azzardare un'ipotesi,' OrderByDescending.First' dovrebbe essere più efficiente di 'OrderBy.Last'. – nawfal