Nové výhodné předplatné namísto kreditů je tu! Více informací. Upravili jsme také naše provozní podmínky.
NOVINKA: Staň se datovým analytikem a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Lekce 16 - Narozeniny v C++ - Widget výsledků - Dokončení

V minulé lekci, Narozeniny v C++ - Widget výsledků - Ruční tvorba, jsme rozpracovali poslední třídu ResultWidget, která nám konečně na hlavním formuláři zobrazí, kdo má kdy jaké výročí.

Dnes tuto třídu dokončíme a s ní naše aplikace začne vykazovat první výsledky.

Kdo má narozeniny

Pokračujme metodou pro zjištění, kdo má včera, dnes a zítra narozeniny:

void ResultWidget::whosBirthday()
{
    try {
        PersonModel model;
        Person person;

        QList<Person> personList;

        QString noResult(tr("žádná událost"));

        mp_labelYesterday2 = new QLabel(noResult);
        mp_labelYesterday = new QLabel(noResult);
        mp_labelToday = new QLabel(noResult);
        mp_labelToday->setStyleSheet("color: maroon; font-size: 20px;");
        mp_labelTomorrow = new QLabel(noResult);
        mp_labelTomorrow2 = new QLabel(noResult);

        if (model.findByDate(m_today.toJulianDay()-2, &personList)) {
           mp_labelYesterday2->setText(createResultString(personList));
        }

        if (model.findByDate(m_today.toJulianDay()-1, &personList)) {
            mp_labelYesterday->setText(createResultString(personList));
        }

        if (model.findByDate(m_today.toJulianDay(), &personList)) {
            mp_labelToday->setText(createResultString(personList));
        }

        if (model.findByDate(m_today.toJulianDay() + 1, &personList)) {
            mp_labelTomorrow->setText(createResultString(personList));
        }

        if (model.findByDate(m_today.toJulianDay() + 2, &personList)) {
            mp_labelTomorrow2->setText(createResultString(personList));
        }
    } catch (QString e) {
        QMessageBox msg;
        msg.critical(this, "Stala se chyba",
                     e.append("\nZkuste znovu spustit aplikaci nebo kontaktujte výrobce!"));
    }
}

Metodu createResultString() dodáme dále. Pojďme si kód popsat:


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Před koupí tohoto článku je třeba koupit předchozí díl

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš s Provozními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Přístup k jednotlivým lekcím dle způsobu pořízení.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V C++ tutoriálu dokončíme Qt widget k zobrazení údajů o aktuálních výročích v naší aplikaci pro upomínání narozenin a svátků.
Článek pro vás napsal Virlupus
Avatar
Autor se věnuje webovým aplikacím, skladově-účetnímu softwaru, 3D grafice, lexiální analýze a parserování. Studuje fyziku na MFF UK. Učil IT na střední škole.
Aktivity