Painonappi
Kuinka voidaan rakentaa painonappi? Tähän tarvitaan neliö ja neliöhän voidaan piirtää komennolla rect(). Käytännössä meidän on tiedettävä, onko hiiri tämän neliön sisällä. Sen voi tutkia if-lauseella. Tehdään seuraavanlainen neliö.
Jotta ollaan neliön sisällä, niin x-koordinaatin on oltava nyt välillä 50…130. Eli x on suurempi kuin 50 ja x on pienempi kuin 130. Vastaavasti myös y-koordinaatin on välillä 50…130. Voimme kirjoittaa ehdon.
Jos (((x on suurempi kuin 50) JA (x on pienempi kuin 130))) JA
(( y on suurempi kuin 50) JA (y on pienempi kuin 130)))
Sama ehto ohjelmointikielessä olisi seuraava.
if (((x>50) && (x<130)) && ((y>50) && (y<130)))
Koska x ja y ovat hiiren koordinaatit, nyt saamme tietää, milloin hiiri on neliön sisällä. Kun lisäksi lisäämme toisen ehdon, joka tarkistaa onko hiiren vasenta painiketta painettu, niin meillä on painikkeen idea selvillä. Teemme siis kaksi sisäkkäistä ehtoa. Ohjelma painonapin luomiseksi on seuraava.
// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
void setup () {
size(400,300); // Ikkunan koko
textSize(32); // Tekstin koko 32
}
void draw () {
int x = mouseX; // Lue hiiren x-koordinaatti
int y = mouseY; // Lue hiiren y-koordinaatti
background(255,255,255); // Valkea taustanväri
if (mousePressed == true) {
// Jos hiiren vasenta painiketta on painettu
if (((x > 50) && (x < 130)) && ((y > 50) && (y < 130))) {
//Jos hiiren koordinaatit alueen sisällä
fill(255,0,0); // Aseta punainen väri
text("Pohjassa",50,200); // Tulosta teksti: Pohjassa
}
} else { // Jos hiiren vasenta painiketta ei ole painettu
fill(255,255,0); // Aseta keltainen väri
}
rect(50,50,80,80); // Piirrä suorakulmio
}
Ensimmäinen ehto täyttyy, jos hiiren vasenta painiketta on painettu. Toinen ehto täyttyy, jos hiiren koordinaatit (x,y) on määritellyn alueen sisällä. Jos nämä molemmat ehdot täyttyvät, niin neliö vaihtaa väriä ja lisäksi tulostuu kommentti: Pohjassa. Mikäli toinen ehto ei täyty, niin tällöin palautetaan alkuperäinen väri. Alla on kuvattu ohjelman esimerkkiajo.

