Učitel c# – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Učitel c# – .NET – Fórum – Programujte.comUčitel c# – .NET – Fórum – Programujte.com

 

Kalgys0
Návštěvník
14. 4. 2013   #1
-
0
-

Zdravím nenašel by se někdo, kdo mi občas zodpoví otázky, kterým se časem nasbírá hodně? Skype: kalgys1

Nahlásit jako SPAM
IP: 62.84.150.–
Evzen+2
Návštěvník
14. 4. 2013   #2
-
0
-

Ahoj,

Vypiš to sem a my ti rádi odpovime :-) 

Evžen

Nahlásit jako SPAM
IP: 88.101.117.–
Kalgys0
Návštěvník
15. 4. 2013   #3
-
0
-

#2 Evzen
No takže, nejdřív bych zmínil, že jsem "teoretický" programátor (umím vymyslet algoritmus), syntax, tomu jsem zatím v c# moc neporozuměl.

Potřeboval bych se naučit se orientovat v zobrazování grafických výstupů mých pseudo-konzolových aplikací. Nepotřebuji uživatelsky příjemné aplikace. Taky bych potřeboval nějaké informace o práci se soubory (nejen textové). Poslední téma je práce s globálními proměnnými ve WPF aplikaci. Programovat umím v Pascalu.

Nahlásit jako SPAM
IP: 213.155.225.–
RomanZ
~ Anonymní uživatel
272 příspěvků
15. 4. 2013   #4
-
0
-

No a otázka je jaká?

Můžeš se podívat na MSDN (třeba http://msdn.microsoft.com/en-us/library/aa288436(v=vs.71).aspx), tam by mělo být všechno, ale pro začátečníka může být těžké tam něco najít. Ale existují i tutorialy zaměřené na začátečníky, chce to trochu googlit.

Nebo si můžeš koupit knížku, (např.: http://knihy.cpress.cz/c-2008.html), ale to se Ti může zdát drahé.

Nebo máš konkrétní dotaz, když nevíš jak pohnout s nějakým problémem, a na to je dobré položit dotaz do fóra. Jenže Ty spíš asi hledáš systematické vzdělání, a na to máš lepší tu knížku nebo nějaké zdroje na webu.

Nahlásit jako SPAM
IP: 90.176.60.–
Kalgys0
Návštěvník
15. 4. 2013   #5
-
0
-

Několik tutorialů jsem už přečetl, teď jsem se vrhl na vytvoření piškvorek, algoritmus pro UI už mám promyšlený, ale to grafické rozhraní je pro mě problém. Proto jsem chtěl někoho, kdo mi občas poradí přes skype. 

Ohledně otázek:

1) Jak můžu udělat něco, jako globálně přístupnou proměnnou, respektive pole tlačítek?

2) Jak udělat, aby se tato tlačítka zobrazila v novém okně (vzniklém po kliknutí na tlačítko s "módem" (SP,MP) )?

3) Jak udělat metodu, ke které se dá přistupovat z kteréhokoliv tlačítka z výše uvedeného pole a zároveň ta je schopná rozpoznat inicializační zdroj (stisknuté tlačítko).

4) Jak připojit obrázek, k tlačítku? (tuším, že pomocí ImageBrush, ale zatím jsem neobjevil jak)

5) Jak tvořit pixelovou grafiku? (viz příklad minulého ročníku soutěže v programování-krajské kolo-Robin Hood - dostanete v souboru zadanou množinu bodů a máte vést přímku co největším počtem těchto bodů-jediný problém byl zobrazení)

Nahlásit jako SPAM
IP: 62.84.150.–
ingiraxo+15
Grafoman
15. 4. 2013   #6
-
0
-

budu předpokládat, že herní pole (jeho velikost) bude dynamická, takže:

1) vytvoříš si novej UserControl, kde bude právě dynamicky generovanej pattern pro tlačítka (kde bude i to pole tlačítek)...
globální proměnný v .net neexistujou a ani bych je nedoporučoval

2) každý tlačítko ma události jako Click, a pokud ho chceš v novým okně, tak jednoduše otevřes novej Form, kterej si předem připravíš (na tom Formu bude právě ten pattern s dyn. generací tlačítek)

3) hm? prostě funkce - vyhledáš tlačítko a v poli (třeba podle pozice,id,jména..) a to vrátíš ho, tady nějak nechápu kde je problém

4) Button má vlastnost BackgroundImage

5) způsobů je víc, ale můj oblíbenej je přes Tile mapu, kde si jen nastavim velikost "pixelu" nebo si dej pixel jako vyplněnej Rect.. vše je o nastavení jenom

a teď...

A) nikde ses nezmínil, jestli to celý chceš vykreslovat, což je trochu sebevražda v GDI pokud bude herní pole větší.. vše tohle jde udělat přes normální Form za pomocí komponent, který si jen nastavís podle sebe

B) to chceš dělat v čem přesně? WinForm nebo WPF?

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Kalgys0
Návštěvník
15. 4. 2013   #7
-
0
-

#6 ingiraxo

1) statické (20*20)
3) sorry, ale moc jsem nepochopil

B) nechám si poradit, ale když už se něco chci naučit tak asi bych šel do WPF

 

Nahlásit jako SPAM
IP: 62.84.150.–
ingiraxo+15
Grafoman
15. 4. 2013   #8
-
0
-

#7 Kalgys
tak když to bude 20x20, tak není problém si vytvořit a přidat do pole těch 400 tlačítek (řekněme, že Form1 bude obsahovat to pole)

k ty 3)... každý tlačítko ma událost Click, takže není potřeba vymejšlej extra fci na to... prostě když klikneš na tlačítko, tak se automaticky zavolá ta funkce Click

čistej C# (winform) je stejně plnohodnotnej jako WPF, takže je to spíš o zvyku, každej má pro a proti

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Kalgys0
Návštěvník
16. 4. 2013   #9
-
0
-

#8 ingiraxo
Promiň, už si připadám jak blbec (ne kvůli vám, ale že mi to ještě hlava úplně nebere, ale co ... učím se). To pole mám, mám ho v metodě SP_click, takže tu metodu click pro jednotlivá tlačítka mám schovat do metody pro singleplayer?

K vlastnosti BackgroundImage ... takovou jsem nenašel.

Jde ve WinForm dělat 3D grafika?

Nahlásit jako SPAM
IP: 62.84.150.–
ingiraxo+15
Grafoman
16. 4. 2013   #10
-
0
-

#9 Kalgys
ne, ty tam chceš mít SP i MP, oba mají naprosto stejný pole 20x20, takže to musíš udělat na vyšší úrovni, tzn. že si uděláš třeba třídu "GameBoard" a v ní kompletně celou správu a zobrazení tlačítek pro piškvorky a při kliknutí na SP nebo MP se jen nastaví celá herní deska (instance bude jen jedna jak pro SP tak MP)

WPF je trochu nestandatní, protože má celý UI přes xaml místo klasickýho kódu jako to je u winForm (čistýho C#), takže s tím obrázkem to je jinak, ten BackgroundImage je pro C# http://msdn.microsoft.com/en-us/library/system.windows.forms.control.backgroundimage.aspx

3D grafika jde udělat i ve winform, ale vše vykresluješ přes gdi+, takže to není tak výkoný jako u wpf, kterej používá d3d, krom toho ty nemusíš vykreslovat vůbec nic, bez problému si vystačíš jen s komponentou Button

Pokud to chceš mít už přes vykreslení a celý 3D, tak bych spíš šel do nějakýho enginu, je hned několik knihovem s portem z opengl nebo d3d (nejznámnější je asi xna)

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Kalgys0
Návštěvník
16. 4. 2013   #11
-
0
-

#10 ingiraxo
Ok to je dobrý nápad s tím nadřazeným celkem, to mě mohlo napadnout.

Snad už se moc problémů neobjeví.

Nahlásit jako SPAM
IP: 213.155.225.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 14 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý