Diskuze: Winforms posunutí okna oproti předešlému
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 10 zpráv z 10.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Můžu vědět, k čemu je to dobré? Monitor má určité rozlišení a rozměry a když dělám aplikaci, potřebuji, aby se mi to okno zobrazilo pokud možno tak, aby na něm bylo vidět všechno. Když se mi větší form otevře až od prostředka monitoru a já bych kvůli zobrazení musel ten form někam "přešoupnout", byl bych z takového programu pěkně otrávený a prohlásil bych o něm, že je špatně udělaný...
Jak už bylo řečeno, musíš si to umístit normálně přes pozici, jediné co potřebuješ vědět je pozice toho okna, ke kterému to řadíš. Např:
private void button1_Click(object sender, EventArgs e)
{
Point position = new Point(this.Location.X, this.Location.Y); // v this.Location je pozice Form1
for (int i = 0; i < 6; i++)
{
position.X += 50;
position.Y += 50;
Form newForm = new Form();
newForm.StartPosition = FormStartPosition.Manual;
newForm.SetDesktopLocation(position.X, position.Y);
newForm.Show();
}
}
Přičemž, si do position na začátku uložím pozici toho hlavního Form1
a následně si generuju ostatní okna,kde jim počáteční pozici nastavuju
manuálně a to na zmíněný - upravený position dle libosti. Samozřejmě ten
Form1 má také StartPosition na manual a nachází se na souřadnici Location.
Zobrazeno 10 zpráv z 10.