IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Winforms posunutí okna oproti předešlému

Aktivity
Avatar
n5ver
Člen
Avatar
n5ver:22.1.2015 17:41

Ahoj, poradil by mi někdo jak docílit toho, aby se okna v Windows Forms aplikaci zobrazovala tak jako na obrázku? Předem děkuji.

 
Odpovědět
22.1.2015 17:41
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na n5ver
Jan Vargovský:22.1.2015 17:44

Tohle je defaultní chování.

 
Nahoru Odpovědět
22.1.2015 17:44
Avatar
n5ver
Člen
Avatar
n5ver:22.1.2015 17:49

Dobře, ale když nastavím pozici pro první okno na střed obrazovky, tak už se další okna otevíraná z toho prvního takto nechovají, ať jim nastavím jakou chci pozici při zobrazení.

 
Nahoru Odpovědět
22.1.2015 17:49
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na n5ver
Jan Vargovský:22.1.2015 17:54

Nastav tam zase defaultní StartPosition.

 
Nahoru Odpovědět
22.1.2015 17:54
Avatar
n5ver
Člen
Avatar
n5ver:22.1.2015 18:23

To jsem nastavil, ale když to první okno šoupnu tak se mi sice další zobrazují tam, kde původně bylo a né tam, kde teď je.

 
Nahoru Odpovědět
22.1.2015 18:23
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na n5ver
Jan Vargovský:22.1.2015 20:15

Tak si napiš umístění formuláře sám.

 
Nahoru Odpovědět
22.1.2015 20:15
Avatar
n5ver
Člen
Avatar
n5ver:22.1.2015 20:31

No to bohužel neumím... Doufal jsem, že by mi někdo poradil.

 
Nahoru Odpovědět
22.1.2015 20:31
Avatar
Odpovídá na n5ver
Michal Štěpánek:22.1.2015 20:41

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ý...

Nahoru Odpovědět
22.1.2015 20:41
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
n5ver
Člen
Avatar
n5ver:22.1.2015 23:30

No to se nestane, prtože okna jsou poměrně malá.

 
Nahoru Odpovědět
22.1.2015 23:30
Avatar
rawen
Člen
Avatar
Odpovídá na n5ver
rawen:23.1.2015 5:59

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. :)

Editováno 23.1.2015 6:00
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
23.1.2015 5:59
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.