Programmering A C# - ?· Programmering A – C# ... 3.1 från och ... att kunna få 1, 2 ,3 eller 4…

  • View
    213

  • Download
    0

Embed Size (px)

Transcript

  • ProgrammeringAC#VT2010EttkompendieverProgrammeringA(50p)ic#StefanFredriksson20100208

  • 2

    InnehllHjlpochreferenser................................................................................................................................3

    Kap1Introduktion................................................................................................................................3

    Stegfrsteg........................................................................................................................................3

    Kapitel2Variabler.................................................................................................................................8

    Attgra..............................................................................................................................................10

    Kapitel3IFsatsen..............................................................................................................................11

    AttGra.............................................................................................................................................13

    Kap3.5IFsatserochfrger................................................................................................................14

    Attgra..............................................................................................................................................14

    Kap4Slumptal....................................................................................................................................16

    Attgra..............................................................................................................................................18

    Kap5Timer..........................................................................................................................................19

    Attgra:.............................................................................................................................................22

    Kapitel6Picturebox............................................................................................................................23

    Attgra..............................................................................................................................................24

  • 3

    Hjlpochreferenserhttp://csharpskolan.se/index.php(SitepsvenskaomC#)

    http://www.java2s.com(TutorialstillalltfrnCtillMicrosoftWord)

    http://iwtjanster.idg.se/webbstudio/(OnlinetutorialsiSQL,JAva,C#ochmycketmer.Psvenska)

    Kap1IntroduktionLaddanerSharpdevelop3.1frnhttp://icsharpcode.com/OpenSource/SD/Download/ochinstalleradetpdindator.

    GtillFronterochladdanerprogrammetP1HelloWorld.exe.Detliggerimappenvningarirummentk1.GrettprogramsomgrsammasaksomP1HelloWorld.exe.

    Stegfrsteg1. SkapaenNewsolution

  • 4

    2. MarkeraWindowsApplicationochdpdittprogramtillngot,exempelvisProgram1.Anvndhelstintesvenskatecken.

  • 5

    3. Lggmrketilldetremarkeradedelarna.TillvnstervljWindowsFormsImittenhopparmanmellandesignlgeochkodlgeTillhgerfinnsallaegenskaperochattributfrdetmarkeradeobjektet(dettafallsjlvafnstret)

  • 6

    4. TillvnsterunderToolboxfinnsenmngdolikakomponentersomvikananvndagenomdraochslpptillvrtprogram.Draenknapp(button),entextflt(label)ochentextruta(textbox)tilldittprogram.Programmetkommerautomatisktattdpadessatillbutton1,label1ochtextbox1.Dettagrattndragenomattmarkeraobjektetochndranameunderegenskaperna(properties)tillhger.

  • 7

    5. Nuvillviattsakerskahndanrvitryckerpknappen.Vivillattdetsomstritextrutan(textbox1)skaskrivasinitextfltet(label1).Vivillocksatttextensomstrpknappenskandras.AllatreobjektsomviharskapatharettattributsomheterText.Dettaattributrdetsomstrpknappen,itextfltetelleritextrutan.Dubbelklickapknappen,dhopparprogrammettillkodlgetochdenskaparautomatisktenfunktionsomheterButton1Click().Detsomviskrivermellanmsvingarna{}kommeratthndanrvitryckerpknappen.Kodennedangrtvsaker:ndrartextenpknappentillKnapp.ndrartextenilabel1tilldetsomstritextbox1.

    Krdittprogram(tryckpF5)ochkontrollerasattdetfungerarsomdetrtnkt.

  • 8

    Kapitel2Variabler

    Envariabeliprogrammeringkansessomenldadrvispararnerngotsomviskaanvndasenareiprogrammet.Detfinnsolikatyperavvariablerberoendepvadviskasparaidem.Viskabrjamedatttittapenint.Enint renvariabeldrvispararettheltal,t.ex14,3004eller45.Frstbrjarvimedattdeklarera(skapa)variablen.

    int a;

    Nuharviskapatldasomheteraochidenkanvistoppaettheltalfrattdetren int.nslngefinnsingentingildan,denrhelttom.Vikannrsomhelststoppainngotildan,detendavimstetnkaprattvibarakanstoppainheltal.

    a = 42;

    Nuharvistoppatintalet42ildan.Viskaparettparvariablertill

    int b;int c;

    Viharskapattvvariablertillsomvidpttillbochc.Vistopparin(detkallastilldela)talet10ivariablenb;

    b = 10;

    Eftersombdavariablernaaochbrtal(int)kanvirknameddem.Vitarochsummerardemochstopparinsvaretivariabelnc

    c = a + b;

    Nuinnehllervariabelnctalet52(42+10).

    Variabelnamn Innehllerint Heltal,2miljardertill2miljarderlong Heltal,vldigtstorataldouble Decimaltalchar Ettteckenstring Textstrngarbool Trueellerfalse

  • 9

    Vigrettlitetprogramsomkansummeratvtal.Skapaettprogramsomserutungefrshr:

    Irutornaskaviskrivaintvtal.Nrvitryckerpknappenskadessatalsummerasochsvaretskaskrivasutilabel1.Dubbelklickapkappenfrattfframfunktionensomkrsnrvitryckerpknappen.Vivillnuskapatrestyckenvariableravtypenint.IdenfrstaskavisparadetsomstrItextBox1,idenandraskavisparadetsomstritexBox2.Identredjespararvisummanavdetvfrsta.Jagdperminavariablertilli1,i2ochsumma

    .

    Nurvariablernaskapadeochnstastegrattstoppaintalensomstrirutorna.Hrkommerettproblem,detsomstrirutornarjutextochintetalsvimstekonvertera(graom)detsomstritextrutortilltal.S,vivillgraomdetsomstritextrutornatilltalochstoppainivravariabler.Detgrtillpfljandestt;

    void Button1Click(object sender, EventArgs e) {

    int i1; int i2; int summa; }

    i1 = Convert.ToInt32(textBox1.Text); i2 = Convert.ToInt32(textBox2.Text);

  • 10

    Nusummerarvidessatvtalochspararivariabelnsumma

    Slutligenvillviskrivainsvaretvifickivrlabel1.Men,ienlabelstrdettext,intetal,svimstegraomvrttaltilltextinnanvistopparindet.Detfungerarpnstansammasttsomtandrahllet.

    Nuskadetfungera.Hmtagrnahemexempel2.exefrnfronteromduvilltittahurdetserut.Grnuettegetprogramsomfungerarpsammastt.

    AttgraHmtahemprogramP2Rknaren.exefrnFonter.Grettegetprogramsomfungerarpsammastt.

    Variabelnamn Innehller

    int Heltal,2miljardertill2miljarder

    long Heltal,vldigtstoratal

    double Decimaltal

    char Etttecken

    string Textstrngar

    bool Trueellerfalse

    summa = i1+i2;

    label1.Text = Convert.ToString(summa);

  • 11

    Kapitel3IFsatsen

    Iblandvillmanattvissasakerskahndabaraomngotannatvillkorruppfyllt.DanvndsIfsatser.

    GenerelltserIFsatsenutshr:

    if (Ngot r sant) { Gr detta!; } else if (Ngot annat r sant) { Gr detta!; } //(Hr kan det komma flera else if) else { I alla andra fall, gr detta!;

  • 12

    Vigrettlitetprogramfrattdemonstrera.

    Tvstyckentextboxdrviskaskrivaintal. Enknapp. Enlabeldrviskaskrivautettparsaker.

    Nrmanskatryckerpknappenfljandehnda:

    Omtaletitextbox1rstrrendetitextbox2skriverdenilabel1:[Frstatalet]rstrren[Andratalet].Detrvrdenaav[Frstatalet]och[Andratalet]somskaskrivasut,t.ex.17,10ellervaddetnur.

    OmtaletirutaBrstrrendetirutaAskriverdenilabel1:[Andratalet]rstrren[Frstatalet].

    Omtalenrlikaskadenskrivaut:[Frstatalet]och[Andratalet]rlikastora.

  • 13

    Dengrnatextenrkommentarersomprogrammetintekommerattbrysigom.Mananvnderkommentarerfrattfrklaravadkodgrtillandrasomlserdenellerfrattmansjlvskakommaihgdetsenare.

    AttGraProgrammetheterexempel3.exeochliggerpFronter.NrnigjortochfrstttdetkanniladdahemochgraP3MyndigKollen.exe.

    void Button1Click(object sender, EventArgs e) { //Skapa tv variabler int a; int b; //Gr om det som str i textrutorna till int //och stoppa in i a och b a = Convert.ToInt32(textBox1.Text); b = Convert.ToInt32(textBox2.Text); //Om a r strre n b if (a > b) { //Gr detta label1Text = a + " r strre n " + b; } //Annars b r strre n a else if (b > a) { //Gr detta label1Text = b + " r strre n " + a; } //I alla andra fall n ovan else { //Gr detta label1Text = a + " och " + b + " r lika stora"; } }

  • 14

    Kap3.5IFsatserochfrgerFrattflitepersonligprgelpsittprogramskavitittaphurmankanndrafrger.

    Vigrenenkeldesignmedenknappochenlabelochengroupboxmedtvstyckenradiobuttons.Nrvitryckerpknappenskafrgenpbakgrunden,knappenochtextenndrastillrttellergrntberoendepvadmanharvalt.

    AttgraGrsammaexempelsomovan.ProgrammetfinnsattladdanerfrnFrontersomexempel3.5.exe.LaddasedannerohgrettprogramsomfungerarsomP3.5FrgVljaren.exe.

    Variabelnamn Innehller

    Int Heltal,2miljardertill2miljarder

    Long Heltal,vldigtstoratal

    Double Decimaltal

    Char Etttecken

    String Textstrngar

    Bool Trueellerfalse

  • 15

    exempel3.5.exe

    void Button1Click(object sender, EventArgs e) { //Om radioButton1 r markerad (notera att det r tv stycken = if (radioButton1.Checked == true) {

    //Detta ndrar bakgrundsfrgen p knappen button1.BackColor = Color.Red; //Detta ndra texten p knappen button1.ForeColor = Color.Green; //Detta ndra bakgrundsfrgen p programmet

    this.BackColor = Color.Red; //Detta ndrar textfrgen p radiobuttons

    radioButton1.ForeColor = Color.Green; radioButton2.ForeColor = Color.Green; //Detta ndrar frgen p textet i label1. label1.ForeColor = Color.Green; } //Annars om den andra radiobutton2 r markerad ska fljande hnda else if (radioButton2.Checked == true) { butt