2010-09-10 9 views
6

Sto tentando di districare tutte le proprietà di posizione e dimensione di winform e sarebbe davvero utile se ci fosse una panoramica completa che spiegasse le relazioni tra di loro. Molti di loro sembrano essere funzionalmente equivalenti, ma temo che possa fare alcune false ipotesi.winforms proprietà posizione e dimensione

Per riferimento, mi riferisco a proprietà come Screen.PrimaryScreen.Bounds vs Form.DesktopBounds; Form.ClientRectangle vs Form.DisplayRectangle; Form.left vs Form.Location.X; PointToScreen vs Cursor.Position e così via. Sono inoltre particolarmente interessato all'effetto di più monitor sulle proprietà di posizione.

Se qualcuno sa di un diagramma annotato che lo espone, sarebbe fantastico.

risposta

17

Come risposta parziale, descrivendo tali proprietà si elencano sopra:

  • Screen.PrimaryScreen.Bounds vi dà le dimensioni del monitor principale. In una configurazione multi-monitor che è impostata su quale schermo è primario.
  • Form.DesktopBounds fornisce il limite combinato per l'intero "desktop", che è una tela virtuale che copre tutti i monitor attivi.
  • Form.ClientRectangle fornisce l'area (rect) dell'area client del form (lo spazio all'interno del cromo)
  • Form.DisplayRectangle è simile a Form.ClientRectangle ma include il cromo (barra del titolo e bordo attorno forma)
  • Form.Location.X e Form.Left sono effettivamente la stessa cosa (si applica anche a top e Y) usando in alto a sinistra come origine 0,0 e aumentando x e in basso a destra
  • PointToScreen restituisce la coordinata "schermo" - ma sembra essere relativa al totale area desktop; Cursor.Position restituisce un valore simile

Se hai intenzione di saperne di più sulla configurazione dello schermo sul client quindi controllare la Screen class on MSDN. Di certo interesse potrebbe essere anche la proprietà AllScreens, che fornisce dettagli sulla configurazione completa.

Edit:

Ok - un (semplice) panoramica ;-) posso essere pigro troppo!

Simple Overview of Position Properties

+1

@AJ - grazie, ma proprio per chiarire che non cercavo spiegazioni individuali. Per quanto pigro possa essere, ho fatto spionaggio MSDN. Quello che speravo davvero per una panoramica che li legasse tutti insieme, preferibilmente un diagramma annotato. – CtrlDot

+1

@AJ - amico, tu rock! – CtrlDot

Problemi correlati