Avatar billede j3ppah Novice
11. april 2008 - 10:07 Der er 7 kommentarer og
1 løsning

spil / load form igen :S og en eller sætning

Hejsa eksperter...
sidder med et lille problem...
er ved at lave et lille spil i c#... bare for sjov og for at få tiden til at gå med noget, som jeg faktisk kan lære noget af...

Jeg har så et problem med "spillet".. når du har gennemført et level bliver den nød til at åbne et nyt vindue for at komme til den næste... kan ikke finde ud af at bruge user control. eller har ikke lært det endnu... + at jeg i et af levelene ikke kan finde ud af at lave en switch sætning, der kan  sige "green" ||"Green" ... kan vidst ikke helt finde ud af tegnsætningen eller noget i den stil...

Hvis der er nogle der har lyst til lige at kigge på det og eventuelt komme med foreslag, eller rettelser og så lige sende den tilbage til mig. kunne det bare være nice...

Download link http://rapidshare.com/files/106572140/programmering_spil.zip.html

P.s. jeg gidder ikke hører på deværse kritikkere... JA jeg er newb c# programmer, men man skal jo starte et sted ikke ?
Avatar billede j3ppah Novice
11. april 2008 - 10:10 #1
hov... her er også lige et link til publis versionen...
http://rapidshare.com/files/106573310/spil__2_.zip.html

og PS. spillet er langt fra færdigt :P
Avatar billede softspot Forsker
11. april 2008 - 10:15 #2
Dette er et seriøst forum, hvor der tages udgangspunkt i opgaven og ikke din person, det burde derfor ikke være nødvendigt med dit P.S. :)

En switch kan se således ud:

switch(udtryk)
{
  case "green":
  case "Green":
    // din handling
    break;
}


Du kan også benytte return i stedet for break, det vil så bare afslutte den aktuelle funktion og altså springe over koden efter switch-blokken, hvor break blot springer til første sætning efter switch-blokken.


Med hensyn til brugen af usercontrols, så er den lidt sværere at forklare med mindre du giver lidt mere information om de omstændigheder den skal fungere under...
Avatar billede j3ppah Novice
11. april 2008 - 10:25 #3
kan ikke gøre som du siger... den ser sådan her ud...
og hvis jeg tilføjer en magen til neden under der hedder "Green"
siger den bare at form 7 newform allerede er brugt i samme scope, og ikke kan bruges igen

string a = "0";
            a = textBox1.Text;
            switch (a)
            {
                case "green":
                    Form7 newform = new Form7();
                    this.Hide();
                    newform.ShowDialog();
                    break;

                default:
                    textBox1.Text = "";
                    break;
            }
Avatar billede aaberg Nybegynder
11. april 2008 - 14:29 #4
string a = "0";
            a = textBox1.Text;
            Form7 newform;
            switch (a)
            {
                case "green":
                    newform = new Form7();
                    this.Hide();
                    newform.ShowDialog();
                    break;
                case "Green":
                    newform = new Form7();
                    this.Hide();
                    newform.ShowDialog();
                    break;
                default:
                    textBox1.Text = "";
                    break;
            }

Eller som softspot foreslår:

string a = "0";
            a = textBox1.Text;
            switch (a)
            {
                case "Green":
                case "green":
                    Form7 newform = new Form7();
                    this.Hide();
                    newform.ShowDialog();
                    break;

                default:
                    textBox1.Text = "";
                    break;
            }
Avatar billede aaberg Nybegynder
11. april 2008 - 15:26 #5
Eller endnu bedre. Hvis den skal forstå alle måder at skrive "green" på, med store og små bogstaver:

if (textBox1.Text.ToUpper() == "GREEN")
{
    Form7 newform = new Form7();
    this.Hide();
    newform.ShowDialog();
}
Avatar billede aaberg Nybegynder
12. april 2008 - 22:41 #6
Jeg blev nysgerrig på hvad du havde lavet, så jeg downloadede dit spil. Da jeg først havde downloaded det, kunne jeg ikke lade være med at lave nogle få forbedringer. Jeg har lavet lidt om på strukturen, så hver level er en UserControl i stedet for en form. Dette betyder at det er samme form som er åben hele tiden. Derudover har jeg lavet lidt om på level 4, hvor svaret er "green" (Som jeg foreslår i min tidligere kommentar). Til sidst har mere end halveret kodemængden på level1, ved at gøre det lidt smartere.

Jeg håber dette kan hjælpe dig til at komme virkeligt godt i gang med C#.

Den forbedrede version kan hentes fra følgende url:
http://sites.google.com/a/aaberg.cc/games/Home/forbedring-af-spil-fra-ekspertendk/programmering_spil%2812.04.2008%29.zip?attredirects=0

:o)
Avatar billede j3ppah Novice
14. april 2008 - 08:26 #7
aaberg80, dit svar var MEGET MEGET MEGET behjælpeligt.... det hjalp mig virkeligt... derfor får du alle 200 points...
(Jeg regner med det er i orden jeg bruger din kode)... er ligesom NOGET nemmere end det jeg havde lavet :P..

men som sagt... alle programmøre skal jo starte et sted :)...
og når det en gang bliver færdigt om et par uger skal jeg nok lige smide dig en pm :P
Avatar billede aaberg Nybegynder
14. april 2008 - 09:42 #8
Da jeg selv var ny i faget, gjorde jeg selv mange af de samme fejl. Især den med at oprette nye event handlers til hver knap, selvom de gør stort set det samme, er en klassisk nybegynderfejl jeg selv har gjort. Og du har helt ret, alle må begynde fra begyndelsen :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester