Browse Source

完成登录页面

sunlight
zhaohe 11 months ago
parent
commit
e262669ba4
  1. 2
      usrc/service/app_core.cpp
  2. 19
      usrc/service/page/Page_login.cpp
  3. 1
      usrc/service/page/Page_login.hpp

2
usrc/service/app_core.cpp

@ -58,7 +58,7 @@ void AppCore::appsetup() {
GStateMgr::ins()->initialize(); GStateMgr::ins()->initialize();
AppEventBus::ins()->initialize(); AppEventBus::ins()->initialize();
bool suc = ConfigService::ins()->initialize(); bool suc = ConfigService::ins()->initialize();
if (true) {
if (!suc) {
AppHardware::ins()->initialize(); // 基础硬件初始化 AppHardware::ins()->initialize(); // 基础硬件初始化
FrontEndControler::ins()->initialize(); // 前端控制器,对屏幕的消息进行解析,发送消息给屏幕 FrontEndControler::ins()->initialize(); // 前端控制器,对屏幕的消息进行解析,发送消息给屏幕
FrontEndControler::ins()->startSchedule(); FrontEndControler::ins()->startSchedule();

19
usrc/service/page/Page_login.cpp

@ -21,12 +21,6 @@ static CfgItermCache cfgcache;
bool Page_login::isBelongThisPage(int page) { return page == PAGE; } bool Page_login::isBelongThisPage(int page) { return page == PAGE; }
void Page_login::OnPageLoad() { void Page_login::OnPageLoad() {
if (triggerLoginAction) { // triggerLoginAction为true说明用户刚刚输入完密码
UIS->virtualClick(PAGE, OBJ(blogin), 0); // 触发一次登录按钮虚拟点击事件
triggerLoginAction = false;
return;
}
static int enusrNum; static int enusrNum;
static char usrName[6][20]; static char usrName[6][20];
@ -54,10 +48,23 @@ void Page_login::OnPageLoad() {
UIS->setVal(PAGE, OBJ(chooseUsr), (int32_t)0); UIS->setVal(PAGE, OBJ(chooseUsr), (int32_t)0);
UIS->setVal(PAGE, OBJ(cUsrName), getCfgStr((config_index_t)(kusr_name0))); UIS->setVal(PAGE, OBJ(cUsrName), getCfgStr((config_index_t)(kusr_name0)));
if (!UIS->isFromPopWin()) {
memset(txtPasswdCache, 0, sizeof(txtPasswdCache));
}
UIS->setVal(PAGE, OBJ(txtPasswd), txtPasswdCache);
if (triggerLoginAction) { // triggerLoginAction为true说明用户刚刚输入完密码
UIS->virtualClick(PAGE, OBJ(blogin), 0); // 触发一次登录按钮虚拟点击事件
triggerLoginAction = false;
return;
}
} }
void Page_login::OnInputFieldContentChange(uint8_t bid, const char* text) { void Page_login::OnInputFieldContentChange(uint8_t bid, const char* text) {
// 输入框内容变化时,会触发一次页面重新加载的事件,这里的逻辑是为了实现,免按登录登录按键。 // 输入框内容变化时,会触发一次页面重新加载的事件,这里的逻辑是为了实现,免按登录登录按键。
if (bid == OBJ(txtPasswd)) { if (bid == OBJ(txtPasswd)) {
strncpy(txtPasswdCache, text, sizeof(txtPasswdCache));
triggerLoginAction = true; triggerLoginAction = true;
} }
} }

1
usrc/service/page/Page_login.hpp

@ -8,6 +8,7 @@ class Page_login : public IPageProcesser {
/* data */ /* data */
bool triggerLoginAction = false; bool triggerLoginAction = false;
char txtPasswdCache[20] = {0};
public: public:
static Page_login* ins() { static Page_login* ins() {

Loading…
Cancel
Save