Avatar
michaelbeats7:

Class Otazky
{
Button b;
public Otazky(Button b)
{
b = b;
}
public void otazky(string otz)
{
a tady bych chtěl použit to b z konstruktoru. Hodně věci by mi to ulehčilo, kdybych ten Button nemusel zakládát zase v ty metodě, protože jsem to zkratil ve skutečnosti je ten konstruktor i metoda mnohem delší, ale je to v podstatě to samé.
}

 
Odpovědět 24. března 13:24
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na michaelbeats7
vajkuba1234:

odkaz se zkrývá v proměnné this. Pouziti tedy je:

this.b = b;

Pouzivej priste vlozeni zdrojoveho kodu. :)

Nahoru Odpovědět 24. března 13:34
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na michaelbeats7
vajkuba1234:
Class Otazky
{
Button b;
public Otazky(Button b)
{
  this.b = b;
}
public void otazky(string otz)
{
  nejaka logika
}
Editováno 24. března 13:36
Nahoru Odpovědět 24. března 13:35
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
Tomáš Brůna
Redaktor
Avatar
Odpovídá na michaelbeats7
Tomáš Brůna:
Class Otazky
{
private Button b;
public Otazky(Button b)
{
this.b = b;
}
public void otazky(string otz)
{
 this.b.Text="text tlačítka";
}

něco takového?
Tady:

Class Otazky
{
Button b;

musí (nebo mělo, nevím jestli to funguje i bez toho) by mělo být jedno z tohoto:

  • private
  • public
  • protected
Nahoru Odpovědět 24. března 13:38
Lepší být šprt než blbec :)
Avatar
Tomáš Brůna
Redaktor
Avatar
Tomáš Brůna:

:-@ musím se naučit rychleji psát :D

Nahoru Odpovědět 24. března 13:38
Lepší být šprt než blbec :)
Avatar
Odpovídá na Tomáš Brůna
michaelbeats7:

V erroru mi to píše "Klíčové slovo 'this' není platné ve statické vlastnosti, ve statické metodě ani ve statickém inicializátoru pole"

 
Nahoru Odpovědět 24. března 13:48
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na michaelbeats7
vajkuba1234:

Máš v kódu někde něco statického? Pošli celý kod a vlož jej jako zdroják.

Nahoru Odpovědět  +1 24. března 13:51
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
 
Nahoru Odpovědět 24. března 13:51
Avatar
Odpovídá na michaelbeats7
michaelbeats7:

Anebo vlastně nemam :D potřebuju to mít statický.

 
Nahoru Odpovědět 24. března 13:54
Avatar
Odpovídá na vajkuba1234
michaelbeats7:

Ano, potřebuju to mít statický.

 
Nahoru Odpovědět 24. března 13:55
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na michaelbeats7
vajkuba1234:

Staticky prvek nalezi tride, instancni zase instanci tridy, a nelze k nim mezi sebou pristupovat. Koukni na zdejsi clanek o statice...

Nahoru Odpovědět  +1 24. března 14:05
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na michaelbeats7
vajkuba1234:

Staticke metody byvaj pomocne metody a pristupuje se k nim: Trida.Staticka­Metoda(params) ...

K instancnim metodam zase objekt.Metoda(pa­rams)

Nahoru Odpovědět 24. března 14:08
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
Odpovídá na vajkuba1234
michaelbeats7:

Hele potřebuju mimo třidu udělat něco takovýho : otazkyVsechno otaz = new otazkyVsechno(but­ton1)
otaz.Otazky("to je to aa", "to je to bb")

Prostě budu mít asi 100 otazek a 4 buttony. V ty metodě otazky, budou ty otazky a chtěl jsem aby v tom konstruktoru byly ty buttony, at není ta metoda zbytečně dlouhá. Snad to chápeš.

 
Nahoru Odpovědět 24. března 14:17
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na michaelbeats7
vajkuba1234:

Tak pokud tam ma byt tolik otazek, tak bych pouzil List jako jejich seznam, ktera ma jiz metody pro pridavani atpod. Kazdopadne to co jsi poslal vlozis do metody Main v program.cs

Nahoru Odpovědět  +1 24. března 14:25
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
vajkuba1234
Člen
Avatar
Nahoru Odpovědět 24. března 14:30
No hope, no future, JUST WAR! For world peace Israel must be DESTROYED!
Avatar
Odpovídá na vajkuba1234
michaelbeats7:

Do těch buttony se zapišou odpovědi. Já to do listu ale nechci právě dávat. Chtěl jsem udělat tu metodu ve který bude otázka, odpoved1,odpo­ved2,odpoved3,od­poved4, spravna odpoved. Ale musím to mít ve třídě bohužel a musím ji použit mimo třídu, takže třeba ve formu 1 bych napsal tuhle metodu OtazkyVsechno­.Otazky("Kolik je 1+1", "1", "2","3" ,"4", "1").

 
Nahoru Odpovědět 24. března 15:49
Avatar
Odpovídá na michaelbeats7
Petr Čech (czubehead):
OtazkyVsechno.b=b;

Jinak bych ale doporučoval

  • anglické pojmenování všeho (i když je to jen pro tebe)
  • použití lepšího názvu než "b", to nic neříká a za čas zapomeneš, co to dělá
Nahoru Odpovědět  +1 24. března 16:53
Why so serious? -Joker
Avatar
Odpovídá na Petr Čech (czubehead)
michaelbeats7:

OtazkyVsechno.b = b; nefunguje bohužel

 
Nahoru Odpovědět 24. března 17:18
Avatar
Odpovídá na michaelbeats7
Petr Čech (czubehead):
Class Otazky
{
private static Button b;//tohle musí být statické
public static Otazky(Button b)
{
  Otazky.b = b;
}

Udělej si jasno v tom, co má být statické a co ne ;-)

Nahoru Odpovědět 24. března 17:46
Why so serious? -Joker
Avatar
 
Nahoru Odpovědět 24. března 18:03
Avatar
michaelbeats7:

Hele tak nefunguje, statický konstruktor nemuže mít parametry.

 
Nahoru Odpovědět 24. března 18:15
Avatar
Odpovídá na michaelbeats7
Jakub Šárník:

Pŕestaň blbnout se statikou, přečti si zdejší návody na OOP a zamysli se nad tím ještě jednou, určitě to půjde i bez ní...

 
Nahoru Odpovědět  +1 25. března 11:47
Avatar
Odpovídá na Jakub Šárník
michaelbeats7:

Už to mám ... máš pravdu zbytečně jsem tam dával statickou metodu.

 
Nahoru Odpovědět 25. března 12:26
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 23 zpráv z 23.