(H) Painoindeksi

Tavoite: Opin tekemään yksinkertaisen dialogin Qt Designerilla ja ymmärtämään Qt:n signals & slots -mekanismia.

Ohjeita:

Toteuta uusi projekti: student/12/bmi/.

Luo uusi projekti edellisten materiaaliosioiden ohjeiden mukaisesti.

Tehtävänä on toteuttaa Qt Designerilla alla olevan kuvan mukainen dialogi.

../../_images/bmi_tyhja.png

Kun käyttäjä on antanut paino- ja pituuslukemat ja klikannut Count-nappulaa, ohjelma laskee painoindeksin, jolloin lopputulos on esimerkiksi alla olevan kuvan mukainen.

../../_images/bmi_taytetty.png

Labelin BMI vieressä on toinen label, joka on aluksi tyhjä mutta johon Count-nappulan klikkaamisen jälkeen tulostuu painoindeksi. Labelin Info vieressä on textBrowser-komponentti, johon tulostetaan jokin seuraavista teksteistä:

  • You are underweight.
  • You are overweight.
  • Your weight is normal.

Painoindeksi lasketaan kaavalla

\[Painoindeksi = \frac{paino[kg]}{(pituus[m])^{2}}\]

Normaalipainon alarajana käytetään käytetään painoindeksin lukemaa 18.5 ja ylärajana lukemaa 25.

Attention

Käytä seuraavia objektinimiä lineEdit-widgeteille: weightLineEdit ja heightLineEdit. Käytä näille widgeteille signaaleja editingFinished ja textChanged. Käytä nappuloille nimiä: countButton ja closeButton. Käytä labelille, johon painoindeksilukema tulostetaan, nimeä resultLabel. Käytä textBrowser-widgetille, johon tieto ali-, yli- tai normaalipainosta tulostetaan, nimeä infoTextBrowser.

Samaan tapaan kuin Find-dialogi -tehtävässä, käytä signal & slot -mekanismia kytkemään widgeteille sopivat toiminnot.

Vinkkejä tehtävän tekemiseen:

  • Kannattaa taas aloittaa rakentamalla käyttöliittymä.
  • Muutenkin voit tehdä tehtävän vastaavanlaisissa vaiheissa kuin Find-dialogi -tehtävän.

A+ esittää tässä kohdassa tehtävän palautuslomakkeen.