Stránka 1 z 2

jak na dva fomuláře v C#

Napsal: 15 bře 2012 00:16
od martas01
Ahoj mam asi pomerne hloupy dotaz ale proste nevim jak to udelat :-( delam ve Visual studiu aplikaci v C# a mam tam dva Formy (Form1 a Form2) no a ten Form2 je jako okno pro nastaveni mam tam v nem nejaky combobox a tam vyberu nejakou hodnotu a chci aby se mi ve Formu1 zmeni interval timeru nebo nejaky label aby napriklad zmenil barvu... to je celkem jedno jenze ja nevim jak to udelat jsem uz zoufaly... pritom v Turbo C++ stacilo jen napsat Form1->timer->interval = 400; poradte pls nekdo.

Re: jak na dva fomuláře v C#

Napsal: 15 bře 2012 13:55
od martas01
opravdu nikdo nevi? :-( a nebo jsem popsal spatne muj problem? zkousel jsem to takhle:

Kód: Vybrat vše

public void button1_Text()
{
     button1.Text = "Neco"
}

....

private void button2_Click(object sender, EventsArgs e)
{
     Form1 frm = new Form1();
     frm.button1_Text();
}


metoda button1_Text() je ve Formu1, pri kliknuti na button2, ktery je ve Formu2 ji volam tak ze si vytvorim instanci Formu1, ale nejak to nefunguje nevi nekdo co s tim? Privitam jakekoliv reseni ikdyz to bude treba prasarna je mi to jedno hlavne ze to bude fungovat :D

Re: jak na dva fomuláře v C#

Napsal: 15 bře 2012 16:02
od CZechBoY
si to udělej přes statickou proměnnou třeba
nebo konstruktor..

Re: jak na dva fomuláře v C#

Napsal: 15 bře 2012 18:36
od martas01
jak? :D muzes napsat nejaky priklad?

Re: jak na dva fomuláře v C#

Napsal: 15 bře 2012 20:27
od CZechBoY
C# píše:Form1 form1;
public function Form2(Form1 form1){
this.form1=form1;
}

nejakametoda(args){
this.form1.timer1.Interval=9000;
}

Re: jak na dva fomuláře v C#

Napsal: 16 bře 2012 02:00
od martas01
no takhle to prave nejde... podtrhne mi to ten timer1 v tom this.form1.timer1.Interval=9000; asi proto ze je private ale jak ho mam nastavit jako public kdyz jsem ho tam na ten form vlastne jenom naklikl a ve zdrojaku neni? :D

Re: jak na dva fomuláře v C#

Napsal: 16 bře 2012 21:26
od CZechBoY
ve zdrojáku není? to by mě zajímalo kde teda je ;)

můžeš jednoduše překlapnout viditelnost/modifikovatelnost komponentu přes VS, nemusíš měnit zdroják
public timer.jpg

Re: jak na dva fomuláře v C#

Napsal: 17 bře 2012 18:13
od martas01
tak jsem modifikator pristupu zmenil na public a spustil to a jak se ta metoda zavola tak to vyhodi tohle:

An unhandled exception of type 'System.NullReferenceException' occurred in WindowsFormsApplication1.exe

Additional information: Object reference not set to an instance of an object.

Re: jak na dva fomuláře v C#

Napsal: 17 bře 2012 21:02
od CZechBoY
pošli zdroják, mě to šlo

Re: jak na dva fomuláře v C#

Napsal: 18 bře 2012 00:24
od martas01
tady je ukazkovy priklad:
http://leteckaposta.cz/280867602

Re: jak na dva fomuláře v C#

Napsal: 18 bře 2012 00:29
od CZechBoY
no jo, prostě když někdo neví co píše tak je to špatný…

Form1.cs píše: private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2(this);
frm.Show();
}

Form2.cs píše: public Form2(Form1 form1)
{
this.form1 = form1;
InitializeComponent();
}

Re: jak na dva fomuláře v C#

Napsal: 18 bře 2012 01:10
od martas01
heh co to je? :D ono jak mi to tedkom otevre ten Form2 tak tam na nem neni ten checkBox... proste ten Form2 je prazdny...