Klasse erweitern

Wechseln Sie ggf. in das Paket MeineBildschirme.

Ändern Sie das Klassendiagramm wie folgt:

  • Klasse StartForm
    • Attribut: btnProgress Typ UglButton einfügen
    • Attribut: counter vom Typ uint8_t einfügen
    • Operation: onTimer100ms einfügen,
      die gleichnamige Operation der Basisklasse überschreiben

Quelltext ergänzen

StartForm::onInit
...
r.top += 30;
btnProgress.clickEvent = 'p';
btnProgress.createControl(this, r, "ProgressMsg" );
StartForm::onEvent
...
if (nr=='p')
{
	counter = 0;
	WaitProgress* waitMsg = new WaitProgress;
	waitMsg->text ="es dauert noch ...";
	// die Fortschritts-Variable (0..100) übergeben welche überwacht werden soll
	waitMsg->pValue = &counter;
	app.gui.show( wp );
}
StartForm::onTimer100ms
// nebenläufiger Prozess der den Fortschritt weiter zählt
counter++;

Testen

Erstellen und übertragen sie das Programm auf den Mikrocontroller. Wenn Sie das Paket MeineBildschirme als neues Fenster geöffnet haben, können Sie jetzt zwischen den Fenstern umschalten um die Anwendung zu erstellen. Oder sie betätigen auf dem Titel-Tabulator der Anwendung die rechte Maustaste und erhalten dort das Aktionsmenü des entsprechenden Diagramms. So können Sie die Anwendung auch ohne Umschalten der Fenster erstellen.

Testen Sie die Funktion der Schaltflächen und vergleichen Sie das Ergebnis mit dem Quelltext.

weiter mit

wait_progress.txt · Zuletzt geändert: 2014/01/23 14:27 von huwi