Zdravím nenašel by se někdo, kdo mi občas zodpoví otázky, kterým se časem nasbírá hodně? Skype: kalgys1
Fórum › .NET
Učitel c#
#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.
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.
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í)
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?
#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
#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?
#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)
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Bude to asi prkotina, ale neví ani učitel :))) — založil Stanly
Formulář - po stisku sumit vypsat učitele k danému oboru — založil Kindex
Hledám učitele Javy z Litvínova — založil Jiří Kalina
Moderátoři diskuze