» »

[c#] Globalne spremenljivke v classu

[c#] Globalne spremenljivke v classu

japol ::

Pišem program na sledeči način:

v Form1.cs je koda:

private void button1_Click(object sender, EventArgs e)
{
Enojna_armatura.EnojnaArmatura(this);
}


v dodanem classu Enojna armatura.cs je class:

class Enojna_armatura
{
public static void Dolocitev_kh(Form1 main)
{
double b = System.Double.Parse(main.textBox1.Text);
// in ostali izračun
}
}

Kot je vidno, s kodo v form.cs le povezujem classe v celoto.

Zanima me, kako v class Enojna_armatura vpišem globalno spremenljivko? Ker npr. za spremeljivko "b" ni problem, ker se nahaja znotraj public static in je vezan na main. Potreboval pa bi da je globalna.

darkolord ::

class Enojna_armatura 
{ 
   public static double B { get; set; }
   public static double c;
}

Zgodovina sprememb…

Mitja Bonča ::

Ali rabiš imeti globalne spremenljivke označene kot static?

japol ::

darklord: kako jima določim vrednosti iz textBox1 iz form1?
Mitja: v tem primeru le s static lahko dostopam, če poznaš kakšen drugi primer, prosim napiši.

darkolord ::

Enojna_armatura.B = 42;

japol ::

class Enojna_armatura
    {
        public static double M;
       public static void Dolocitev_kh(Form1 main)
        {
            Enojna_armatura.M = System.Double.Parse(main.textBox1.Text);
        }
}

če tako naredim, je rednost M enaka 0, rabim pa jo pobrati iz textboxa.

Mitja Bonča ::

Zakaj raje ne pošlješ argumentov iz main form v ta now class:
private void button1_Click(object sender, EventArgs e) 
{ 
     Enojna_armatura.EnojnaArmatura(textBox1.Text); 
}
class Enojna_armatura 
{ 
    public static void Dolocitev_kh(string str) 
    { 
         double b = System.Double.Parse(str); 
         // in ostali izračun 
    } 
} 
 

japol ::

darklord: hvala, mi je uspelo;
mitja: to naj bi bila koda v classu? kako je pa textbox1 definiran?

Mitja Bonča ::

kako to misliš kako je definiran? Če misliš access modifer, je najbolje VSEM kontrolam pustite default nastavitev - to je private.

nightrage ::

Spremenljivke naj bi vedno bile skrite, torej private, protected, medtem ko naj bi bila metoda ali pa property, ki dostopa do spremenljivke public.


Vredno ogleda ...

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

C# povezava forma in classa

Oddelek: Programiranje
172138 (1601) Miko55
»

[c#] Risanje z miško

Oddelek: Programiranje
221346 (1027) japol
»

[C#] pomoc pri vpisu elementov v listBox

Oddelek: Programiranje
101177 (1092) keworkian
»

c# class

Oddelek: Programiranje
342151 (1745) japol
»

Koda kalkulatorja v MS visual C# 2008?

Oddelek: Programiranje
212846 (2183) smukC

Več podobnih tem