放置一个box为背景,放置一个textArea控件,开启通配符,在其他任务中更新textArea控件计数值


在方法中实现自增num值,并将值赋值给textArea控件显示



extern void update_control_text();
while(1)
{
update_control_text();
delay(100);
}
Screen1View.hpp
#ifndef SCREEN1VIEW_HPP
#define SCREEN1VIEW_HPP
#include
#include
class Screen1View : public Screen1ViewBase
{
public:
Screen1View();
virtual ~Screen1View() {}
virtual void setupScreen();
virtual void tearDownScreen();
void add_num();
protected:
uint16_t num;
};
#endif // SCREEN1VIEW_HPP
Screen1View.cpp
#include
#include
extern "C" void update_control_text();
Screen1View *screen1;
Screen1View::Screen1View():
num(0)
{
}
void Screen1View::setupScreen()
{
Screen1ViewBase::setupScreen();
screen1 = this;
}
void Screen1View::tearDownScreen()
{
screen1 = NULL;
Screen1ViewBase::tearDownScreen();
}
void Screen1View::add_num()
{
this->num++;
Unicode::snprintf(this->textArea1Buffer, this->TEXTAREA1_SIZE,"%d" ,this->num);
textArea1.resizeToCurrentText();
textArea1.invalidate();
// getRootContainer().invalidate();//解决屏幕乱跳
}
extern "C" void update_control_text()
{
if(screen1)
{
screen1->add_num();
}
}