C# Windows ohjelmointi perusopas



Samankaltaiset tiedostot
Windows Phone ohjelmointi perusteet

Joomla pikaopas. Yksinkertainen opas, jossa neuvotaan esimerkkisivuston teko Joomla julkaisujärjestelmällä vaihe vaiheelta.

2010-luvun kansalaistaito: Windows-puhelimen ohjelmointi. Kai Lindgren, Teollinen tuotanto/metropolia

XNA grafiikka laajennus opas. Paavo Räisänen. Tämän oppaan lähdekoodit ovat ladattavissa näiden sivujen Ladattavat osiossa.

Jypelin käyttöohjeet» Ruutukentän luominen

Muuttujien määrittely

Web Services tietokantaohjelmoinnin perusteet

Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto

5 Näppäimistö. 5.1 Näppäimistön eventit

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Paavo Räisänen. WampServer palvelimen asennus ja käyttö Eclipsen kanssa, sekä ensimmäinen FTP yhteys.

WCONDES OHJEET ITÄRASTEILLE (tehty Condes versiolle 8)

Graafisen käyttöliittymän ohjelmointi

1. Miten tehdään peliin toinen maila?

Monikielinen verkkokauppa

Pong-peli, vaihe Aliohjelman tekeminen. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

Alkuun HTML5 peliohjelmoinnissa

Harjoitus 3: Flash-komponenttiarkkitehtuuri ( )

C# olio-ohjelmointi perusopas

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

Pong-peli, vaihe Aliohjelmakutsu laskureita varten. 2. Laskurin luominen. Muilla kielillä: English Suomi

Pong-peli, vaihe Koordinaatistosta. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 2/7. Tämän vaiheen aikana

Pelaajan tietojen lisääminen

KESKUSTANUORTEN NETTISIVUT- OHJEITA PIIRIYLLÄPITÄJÄLLE 1. KIRJAUTUMINEN

Flash ActionScript osa 4

Java-kielen perusteita

Java-kielen perusteet

Java-kielen perusteet

Web järjestelmän ohjelmointi Kevät 2012 Hans Nieminen

Uuden Peda.netin käyttöönotto

Ohjelmoinnin perusteet Y Python

ITKP102 Ohjelmointi 1 (6 op)

KUVAN TUOMINEN, MUOKKAAMINEN, KOON MUUTTAMINEN JA TALLENTAMINEN PAINTISSA

Tilastokeskuksen rajapintapalveluiden käyttöönotto ArcGISohjelmistossa

Citizen s skill in 2010s: Programming the Windowsphone. Kai Lindgren, Industrial Production/Metropolia

TIETOKONEEN ASETUKSILLA PARANNAT KÄYTETTÄVYYTTÄ

GeoGebra-harjoituksia malu-opettajille

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi

Kerta 2. Kerta 2 Kerta 3 Kerta 4 Kerta Toteuta Pythonilla seuraava ohjelma:

CEM DT-3353 Pihtimittari

2. PPPoE YHTEYDEN POISTAMINEN BAANA-CLIENT Windows 2000 / XP

5. Klikkaa avautuvan ikkunan oikeasta yläkulmasta käyttäjätunnustasi ja valitse Luo pikakuvake

Jypelin käyttöohjeet» Ruutukentän luominen

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4)

7. Näytölle tulostaminen 7.1

Oma kartta Google Maps -palveluun

OHJE 1(6) Windowsin ääniasetukset Jos äänet eivät kuulu ConnectPro:ssa, Skypessä tai muussa ohjelmassa,

WCONDES OHJEET ITÄRASTEILLE (tehty Condes versiolle 8)

Hoitopolkumallin lisääminen

Nettisivujen Päivitysohje

Muistitikun liittäminen tietokoneeseen

Riikka Marttinen, Helsingin Tikoteekki, Windows 7:n helppokäyttötoiminnot

Windows Phone. Sähköpostin määritys. Tässä oppaassa kuvataan uuden sähköpostitilin käyttöönotto Windows Phone 8 -puhelimessa.

Kansion asetusten muuttaminen Windows 2000 käyttöjärjestelmässä Resurssienhallinnan kautta

Harjoitus Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

1. ASIAKKAAN OHJEET Varauksen tekeminen Käyttäjätunnuksen luominen Varauksen peruminen... 4

STS Uuden Tapahtuma-dokumentin teko

VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu

JUnit ja EasyMock (TilaustenKäsittely)

8. Näppäimistöltä lukeminen 8.1

HELIA 1 (1) Outi Virkki Käyttöliittymät ja ohjelmiston suunnittelu :04


TALLENNETAAN MUISTITIKULLE JA MUISTIKORTILLE

Ristijärven metsästysseura tysseura osti lisenssin jahtipaikat.fi verkkopalveluun, jotta seuran

VIP Softphone. Opas asennukseen ja tärkeimpien toimintojen käyttöön

Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun.

H5P-työkalut Moodlessa

Tuplaturvan tilaus ja asennusohje

2013 -merkistä tunnistat uudet ominaisuudet

Testivetoinen ohjelmistokehitys

Interaktiivinen tarinankerronta

OpeOodi Opiskelijalistojen tulostaminen, opiskelijoiden hallinta ja sähköpostin lähettäminen

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

STS UUDEN SEUDULLISEN TAPAHTUMAN TEKO

EuroTraffic Language Training

,QWHUQHWVHODLPHQNl\WWlPLQHQ±,QWHUQHW([SORUHU

Uuden työtilan luonti

Autokunto-ohjelmiston käyttöohjeet

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen

Webmailin käyttöohje. Ohjeen sisältö. Sähköpostin peruskäyttö. Lomavastaajan asettaminen sähköpostiin. Sähköpostin salasanan vaihtaminen

8. Näppäimistöltä lukeminen 8.1

Metodien tekeminen Javalla

Lapin Veikot suunnistusjaosto Iltarastien tulospalveluohjeet versio Pentti Poikela

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä

HOW-TO: Kuinka saan yhdistettyä kaksi tulospalvelukonetta keskenään verkkoon? [Windows XP]

Elisa Puheratkaisu Vakio Pääkäyttäjän ohjeet

Eclipse, SVN ja HelloWorld

Matopeli C#:lla. Aram Abdulla Hassan. Ammattiopisto Tavastia. Opinnäytetyö

EeNet materiaalit ohje

Japanin kirjoittaminen Japanese IME:n avulla Windows 7 -käyttöjärjestelmässä

Kirjan toteutus BoD easybook -taittotyökalun avulla

Sen jälkeen Microsoft Office ja sen alta löytyy ohjelmat. Ensin käynnistä-valikosta kaikki ohjelmat

Selainsähköposti Zimbran käyttöohje

Opiskelijalistojen tulostaminen, opiskelijoiden hallinta ja sähköpostin lähettäminen

ITKP102 Ohjelmointi 1 (6 op)

Ohjeisto Trimble Pro 6H yhdistämisestä Juno 5:een

Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia.

ASCII-taidetta. Intro: Python

Transkriptio:

Paavo Räisänen C# Windows ohjelmointi perusopas www.ohjelmoimaan.net Tätä opasta saa vapaasti kopioida, tulostaa ja levittää ei kaupallisissa tarkoituksissa. Kuitenkaan omille nettisivuille opasta ei saa liittää. Opetustarkoituksessa materiaali on vapaasti käytettävissä. Verkko-opetuksessa oppaan saa julkaista oppilaille tarkoitetuilla sivuilla.

Sisällysluettelo 1: Alkusanat 2:Alkuun 3: Numeroiden tulostus ja lukeminen Windows ohjelmassa 4: Harjoitusohjelma Eurolaskuri 4: Valintaruutujen käyttö, ja tekstikentän vierittäminen 1: Alkusanat C# on käytetyinpiä Windows ohjelmointikieliä. Tässä oppaassa oletetaan, että sinulla on sellaiset C# ohjelmointitaidot, kuin saa lukemalla näiden sivujen C# Perusoppaan. 2: Alkuun Käynnistä Visual Studio. Valitse new project. Valitse projektimuodoksi WPF Application. Ja anna nimeksi haluamasi nimi. Valitsen itse tässä nimeksi WinHarj. Huomaa, että projektin nimeä on jälkeenpäin hyvin vaikea muuttaa, ja että sitä käytetään koko ajan ohjelmoinnissa. Saat seuraavanlaisen näkymän:

Jos työkalupalkki (Toolbox) ei ole vasemmalla näkyvillä, valitse oikealta ylhäältä kahden ristikkäisen vasaran kuva klikkaamalla. Toolbox näyttää seuraavanlaiselta: Tarkista, että sinulla on aktiivisena MainWindow.xaml. Voit nyt klikata Toolboxissa eri valintoja, ja klikkamalla sen jälkeen jotain kohtaa MainWindow ikkunassa, elementti tulee siihen kohtaan.

Valitse esim. Label, kaksi RadioButtonia, Button ja CheckBox. Sen jälkeen sinulla on seuraava näyttö: Nämä ovat eniten käytettyjä toimintoja. Seuraavassa esittely: -Label on tekstikenttä, mihin voit kirjoittaa valmiiksi tekstiä, jota ei lueta ohjelman ajon aikana, vaan se on vain näkyvillä. -RadioButton on valintanappi, jossa vain yksi valinnoista voi kerrallaan olla valittuna. -CheckBox on valintaruutu. Jos on useita valintaruutuja, niistä voi olla valittuna joko yksi tai useampi valinta, tai ei yhtään. -Button on toimintonäppäin, jonka painalluksesta suoritetaan koodi, eli esim. lasketaan tai tulostetaan valintojen perusteella jotain.

Klikkaa nyt oikealta ylhäältä Properties Window pikakuvaketta. Klikkaa sen jälkeen näytölle lisäämääsi Label elementtiä. Saat seuravan näkymän: Muuta nyt Properties ikkunassa Content kohtaa. Enterin painalluksen jälkeen kirjoittamasi teksti tulee näytölle. Saman voit tehdä Radio Buttoneille, Buttonille ja CheckBoxille. TextBoxilla ei ole tätä toimintoa, eikä siihen yleensä kirjoiteta oletukseksi mitään, vaan jätetään tyhjäksi, mutta voit tietenkin sen Text kohtaan Properties ikkunassa kirjoittaa valmiiksi oletustekstin. Voit siirellä elementtejä MainWindow ikkunassa hiirellä siirtämällä. Voit myös klikata MainWindowsin nimeä, ja muuttaa Title kohdasta nimeksi, joka näkyy ylälaidassa esim. Testiohjelma.

3: Numeroiden tulostus ja lukeminen Windows ohjelmassa Yleensä ohjelmassa syötetään pyydetyty luvut TextBoxissa, ja samoiten tulokset tulostetaan TextBoxiin. TextBox ei kuitenkaan osaa käsitellä numeroita, vaan ainoastaan merkkijonoja. Siksi luettaessa numeroita, tai tulostettaessa niitä on tehtävä tyyppimuunnos. Seuraavalla lauseella voi muuttaa double tyypin muuttujan luku1 TextBoxiin tulostettavaan muotoon merkkijonoksi: double luku1; luku1.tostring(); Taasen luettaessa TextBoxixta numeroita, ne ovat oletusarvoisesti merkkijonoja, eli ennen laskutoimituksia ne on muutettava numeroiksi. Suraavassa muutetaan merkkijonomuuttuja luku2 tyyppimuuksella double luvuksi luk2; double luk2; luk2 = Double.Parse(luku2.Text);

4: Harjoitusohjelma Eurolaskuri Tehdään seuraavaksi ensimmäinen ihan kunnon Windows ohjelma Eurolaskuri. Avaa uusi WPF Application sovellus nimellä Eurolaskuri (new project). Anna MainWindow ikkunalle Properties ikkunan Title kohdassa nimeksi Eurolaskuri. Laita ikkunan ylälaitaan Label elementti ja muuta Content kohtaan arvoksi Anna rahasumma:. Lisää ikkunaan TextBox elementti. Anna Properties ikkunassa ylhäältä TextBox sanan jälkeen kenttään, joka aktivoituu klikkaamalla kentän nimeä, nimeksi luku1. Lisää kaksi Radio Buttonia, nimeä ne kuten TextBox:kin nimillä ensimmäinen euro ja toinen markka, ja anna niille Properties ikkunan Content kohdassa tekstiksi Euroista markoiksi (euro) ja Markoista euroiksi (markka). Lisää sitten yksi Button. Sitä ei yleensä nimetä erikseen, vaan käytetään ohjelmassa button1 nimellä. Anna kuitenkin Content kohdassa tekstiksi Laske. Lisää sitten vielä alle yksi TextBox, ja anna sille nimeksi ylhäältä Properties ikkunassa Tulos. Voit nyt ajaa ohjelman Debug valikosta komennolla Start Debugging (tai F5). Sinulle aukeaa seuraava ikkuna. Ohjelma toimii ja pyörii jo, mutta ei tee mitään, koska siihen ei ole vielä lisätty koodia. Lisätää seuraavaksi koodi. Lopeta juuri avatun ohjelman ajo ruksista oikealta ylhäältä, ja siirry MainWindow.xaml ikkunaan. Tuplaklikkaa Laske painiketta. Ohjelma siirtyy MainWindow.xaml.cs ikkunaan, jossa voi kirjoittaa koodia.

Koodi, joka aukeaa, näyttää seuraavalta: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace Eurolaskuri /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window public MainWindow() InitializeComponent(); private void button1_click(object sender, RoutedEventArgs e) Lisää nyt koodia button1_click lohkoon (metodiin). button1_click muokattuna näyttää seuraavalta: private void button1_click(object sender, RoutedEventArgs e) double luku_uusi1, muunnos = 0; //huomaa, että joudut antamaan muunnos //muuttujalle oletusarvon luku_uusi1 = Double.Parse(luku1.Text); //muutetaan teksti double numeroksi //Tarkistetaan kumpi Radio Button on valittuna, ja suoritetaan lasku if ((bool)euro.ischecked) muunnos = luku_uusi1 * 5.94573; if ((bool)markka.ischecked) muunnos = luku_uusi1 / 5.94573; Tulos.Text = muunnos.tostring(); //tulostetaan vastaus Aja ohjelma, ja kokeile syöttää eri lukuja. Ohjelma toimii muuten, mutta kaatuu, jos syötät numeron sijaan kirjaimen. Ohjelmaan on syytä tehdä aina kaikki mahdolliset tarkistukset. Kun suuria ohjelmia tehdään, niille tehdään vaikka mitä tarkistuksia, kuten esim. katkaistaan tietokoneesta virta kesken ohjelman ajon jne. Kun laskutoimitukset laitetaan try catch lohko väliin, niissä tapahtuvat virheet eivät kaada ohjelmaa.

Muokataan button1_click metodi seuraavaksi: private void button1_click(object sender, RoutedEventArgs e) double luku_uusi1, muunnos=0; //huomaa, että joudut antamaan muunnos //muuttujalle oletusarvon try luku_uusi1 = Double.Parse(luku1.Text); //muutetaan merkkijono tekstiksi //Tarkistetaan kumpi Radio Button on valittuna, ja suoritetaan lasku if ((bool)euro.ischecked) muunnos = luku_uusi1 * 5.94573; if ((bool)markka.ischecked) muunnos = luku_uusi1 / 5.94573; catch Tulos.Text= muunnos.tostring(); //tulostetaan vastaus Nyt kun ajat ohjelman, sille voi syöttää mitä haluaa, ja ohjelman ei pitäsi kaatua.

5: Valintaruutujen käyttö, ja tekstikentän vierittäminen Avaa uusi projekti. Lisää ikkunaan kuusi CheckBox:ia ToolBox valikosta. Lisää Button ja TextBox. Anna CheckBoxeille arvot Content osiossa, kuten alla. Jätä silti Properties valikon yläreunassa nimet muuttamatta. Muuta ikkunan koko Height kohtaan 400 ja Width kohtaan 350 Properties ikkunasta ikkunassa, jossa voi myös nimetä ikkunan (Window), eli joka aktivoituu aivan MainWindow paneelin yläreunasta klikkaamalla. Nimeä ikkuna Title kohdasta nimellä Harjoitus. Muuta TextBox:in Height ominaisuudeksi 65 ja Width ominaisuudeksi 140. Aktivoi VerticalScrollBarVisibility kohta valitsemalla toiminto Auto. Nyt käyttöön tulee tarvittaessa pystysuuntainen vieritysikkuna. Vastaavasti saat vaakasuuntaisen HorizontalScrollBarVisibility kohdasta, mutta sitä ei tarvita tässä ohjelmassa.

Muuta nyt button1_click metodi seuraavaksi: private void button1_click(object sender, RoutedEventArgs e) string tulos=""; //huomaa, että joudutaan antamaan alkuarvo if ((bool)checkbox1.ischecked) tulos = "Matti\n"; //huomaa perässä rivinvaihto \n if ((bool)checkbox2.ischecked) tulos = tulos + "Kalle\n"; //+ operaattorilla voi lisätä merkkijonoon if ((bool)checkbox3.ischecked) tulos = tulos + "Pekka\n"; if ((bool)checkbox4.ischecked) tulos = tulos + "Ville\n"; if ((bool)checkbox5.ischecked) tulos = tulos + "Iivari\n"; if ((bool)checkbox6.ischecked) tulos = tulos + "Otto"; Tulostus.Text = tulos; //tulostetaan nimet Propeties ikkunassa IsChecked kohdasta voi valita oletusarvona True, jos haluaa, että CheckBox on jo valmiiksi oletusarvoisesti valittu.

Tässä on valittu oletusarvoiksi Ville ja Pekka, jotka tulevat näyttöön heti ohjelmaa käynnistettäessä. Samoin Radio Buttonin voi asettaa oletusarvoiseksi. Lähteet: Oulun Seudun Ammattiopisto (OSAO), peliohjelmointi verkkokurssi