» »

Mini (verjetn) problem v C#

Mini (verjetn) problem v C#

atasmrk ::

Sm se spravu v c# en program delat, pa se mi je ze na zacetk zataknil in si nism mogu pomagat ne s knigam, ne z netm. Takle problem mam: Na enmo oknu je en label z nekim teksom. S klikom na gumb bi se ta tekst spremenil. Torej imamo neko EventHandler metodo, samo tam notri ne vidim komponent tega okna, ali okna samega. Občutk mam, da bi mogu nekej s public čarat, ampak to je loterija, jes bi pa rd vedu kva je za nardit.

Pa se trenutn listig, da si boste lazi predstavlal:
public class Okno : Form
{
	public Okno()
	{
		//  nalepka
		Label nalepka = new Label();
		nalepka.Location = new Point(25,25);
		nalepka.Size = new Size(100,20);
		nalepka.Text = "Prvotni tekst";

                //  gumb
		Button spremeni = new Button();
		spremeni.Location = new Point(25,50);
		spremeni.Size = new Size(20,100);
		spremeni.Text = "Spremeni";
		spremeni.Click += new EventHandler(spremeniKliknjen);
	
	        //  okno
		this.Text = "pac nekej";
	}
		public void spremeniKliknjen(object sender, EventArgs argumenti)
	{
	      Okno.       //klele pa je tist problem, k nc ne najde da bi se dal krkol delat s tmo      
	}
		public static void Main()
	{
		Okno glavnoOkno = new Okno();
		Application.Run(glavnoOkno);
	}
}
  • spremenilo: OwcA ()

DMouse ::

Tvoj razred sploh nima nobenih objektov, v konstruktorju jih sicer narediš, ampak ko se konstruktor konča, ti ostane prazen objekt Okno (oz. vsebuje samo podedovane zadeve). Probi dat "Label nalepka" in "Button spremeni" izven konstruktorja.

noraguta ::

this.Controls.AddRange(new System.Windows.Forms.Control[] {this.nalepka,this.spremeni});
Pust' ot pobyedy k pobyedye vyedyot!

atasmrk ::

Na žalost nobeden od zgornjih nasvetov ne dela. Sm dal "Label nalepka" pa "Button spremeni" kuj po public class Okno : Form { , pa se ni nč spremenil. še zmerej nism tega vn vidu. Seveda, če sm to naredu tko kokr si si to ti, DMouse, zamislu. To da mas pol prazno okno, pa ni panike, sej jih lohk dodas z Controls.Add(nalepka); Controls.Add(spremeni); in se ti lepo narisejo.

Glede tiste vrstice, noraguta, pa ne vem, kam nej jo dam. Sm probov u konstruktorja, pa u EventHandlerja, pa ni efekta.

DMouse ::

Si kombiniral oba predloga ali vsakega posebi?

atasmrk ::

Hvala lepa vama za vajino pomoc. Tista vrstica od noraguta se je pokazala kot nepotrebna, pa sem ravno z njo odkril napako. Kaj je bilo torej narobe?

Jest se mnapisal v Handlerju Okno.xxx . Noraguta pa je napisal this.xxx . Verjetno ze vidite, kam pes taco moli. In ko Handler zgleda takole:

public void spremeniKliknjen(object sender, EventArgs argumenti)
{
this.nalepka.Text = "Kar nekajy";
}

vse laufa brez problemov.

Hvala vama

Zgodovina sprememb…

  • spremenilo: atasmrk ()

CWIZO ::

če ti dela this.nalepka.text = "da", bi ti mogl tut nalepka.text = "da" !
hancic.info
I can't uninstall it, there seems to be some kind of "Uninstall Shield"...

atasmrk ::

Sej to dela. Ne dela pa Okno.nalepka.text = "da".

CWIZO ::

ja seveda da ne dela.
Okno je razred na pa instanca razreda ...
hancic.info
I can't uninstall it, there seems to be some kind of "Uninstall Shield"...


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C# - runtime generiranje in klicanje kontrol

Oddelek: Programiranje
71194 (950) stalker
»

C# povezava forma in classa

Oddelek: Programiranje
172332 (1795) Miko55
»

[c#] Risanje z miško

Oddelek: Programiranje
221425 (1106) japol
»

C#, TextBox in PopUp forma

Oddelek: Programiranje
61103 (997) MarCar
»

[Visual C#] posodabljanje polja

Oddelek: Programiranje
111645 (1465) iggy1

Več podobnih tem