void QueryDayBillForm::OnKeyEvent(JEvent* e) { int key = e->GetEventCode(); if (key == KEY_ESC) { JForm* form; ClearWindow(); form = Singleton<FormManager>::Instance().Get("DetailStatementForm"); dynamic_cast<DetailStatementForm*>(form)->btnDetail1_->SetCurrent(); form->Show(); e->Done(); } else if (key == KEY_ENTER) { if (e->GetSender() == btnCancel_) { JForm* form; ClearWindow(); form = Singleton<FormManager>::Instance().Get("DetailStatementForm"); dynamic_cast<DetailStatementForm*>(form)->btnDetail1_->SetCurrent(); form->Show(); e->Done(); } if (e->GetSender() == btnQuery_) { Query(); e->Done(); } } JForm::OnKeyEvent(e); }
void TransferForm::OnKeyEvent(JEvent* e) { int key = e->GetEventCode(); if (key == KEY_ESC) { Reset(); JForm* form; //ClearWindow(); form = Singleton<FormManager>::Instance().Get("MainMenuForm"); dynamic_cast<MainMenuForm*>(form)->GetItems()[3]->SetCurrent(); form->ClearWindow(); form->Show(); e->Done(); } else if (key == KEY_ENTER) { if (e->GetSender() == btnCancel_) { Reset(); JForm* form; //ClearWindow(); form = Singleton<FormManager>::Instance().Get("MainMenuForm"); dynamic_cast<MainMenuForm*>(form)->GetItems()[3]->SetCurrent(); form->ClearWindow(); form->Show(); e->Done(); } else if (e->GetSender() == btnReset_) { Reset(); editAccountId_->SetCurrent(); ClearWindow(); Show(); e->Done(); } else if (e->GetSender() == btnSubmit_) { Submit(); e->Done(); } } JForm::OnKeyEvent(e); }
void QueryDayBillForm::EscCancel(JEvent* e) { Reset(); JForm* form; form = Singleton<FormManager>::Instance().Get("DetailStatementForm"); dynamic_cast<DetailStatementForm*>(form)->btnDetail1_->SetCurrent(); form->ClearWindow(); form->Show(); e->Done(); }
void BalanceInquiryForm::EscCancel(JEvent* e) { Reset(); JForm* form; form = Singleton<FormManager>::Instance().Get("MainMenuForm"); dynamic_cast<MainMenuForm*>(form)->GetItems()[4]->SetCurrent(); form->ClearWindow(); form->Show(); e->Done(); }
int main() { //Singleton<BankClient>::Instance().Login(); //return 0; #if 1 JApplication app; JForm* form = Singleton<FormManager>::Instance().Get("LoginForm"); form->Show(); return app.Exec(); // 消息循环 #endif #if 0 JApplication app; printw("%d %d", CONSOLE_WIDTH, CONSOLE_HEIGHT); printw("%d %d", LINES, COLS); refresh(); return app.Exec(); // 消息循环 #endif #if 0 initscr(); raw(); noecho(); keypad(stdscr, TRUE); while (true) { int key = getch(); printw("key: %d\n", key); printw("KEY_ENTER: %d", KEY_ENTER); if (key == KEY_ENTER) { printw("enter\n"); } else if (key == KEY_1) { printw("one--\n"); } else if (key == KEY_DOWN) { printw("down\n"); } else if (key == KEY_UP) { printw("up\n"); } else if (key == KEY_LEFT) { printw("LEFT\n"); } else if (key == KEY_RIGHT) { printw("RIGHT\n"); } } #endif #if 0 JWindowBase jb(0, 0, CONSOLE_WIDTH, CONSOLE_HEIGHT); jb.DrawText("test"); jb.Refresh(); /* init_pair(1, COLOR_RED, COLOR_YELLOW); attron(COLOR_PAIR(1)); mvaddstr(0, 0, "test"); addstr("test"); attroff(COLOR_PAIR(1)); jb.Refresh(); jb.SetBkColor(COLOR_RED); jb.SetTextColor(COLOR_YELLOW); JRECT rect = {10, 10, 20, 20}; curs_set(1); jb.SetCursorPos(10, 10); init_pair(1, COLOR_RED, COLOR_YELLOW); WINDOW *scrwin = newwin(10, 10, 5, 5); wbkgd(scrwin, COLOR_PAIR(1)); wrefresh(scrwin); */ //jb.Refresh(); sleep(3); #endif #if 0 JWindow jw(0, 0, CONSOLE_WIDTH, CONSOLE_HEIGHT, 0); jw.Draw(); sleep(3); #endif #if 0 JApplication app; char * filename = "scrdumpfile"; JButton btn2(25, 2, 10, 3, "test2"); btn2.SetCurrent(); btn2.Draw(); btn2.Refresh(); JButton btn(11, 2, 10, 3, "test"); //btn.SetCurrent(); btn.Draw(); btn.Refresh(); return app.Exec(); #endif }
void LoginForm::Login() { if (editUser_->GetText().length() < 3) { std::vector<std::string> v; v.push_back(" YES "); std::string msg = "用户名小于3位"; int result = JMessageBox::Show("-ERROR-", msg, v); JWindow* win = jApp->GetCurrent(); //这里的win是之前按纽,就是引发消息窗的按纽 editUser_->Show(); win->Draw(); win->Refresh(); return; } if (editPass_->GetText().length() < 6) { std::vector<std::string> v; v.push_back(" YES "); std::string msg = "密码小于6位"; int result = JMessageBox::Show("-ERROR-", msg, v); JWindow* win = jApp->GetCurrent(); editPass_->Show(); win->Draw(); win->Refresh(); return; } //TODO:以下为实际的登陆操作 /* Socket sock; sock.Create(); sock.Connect("127.0.0.1", 8888); std::string str; str.append(editUser_->GetText()); str.append("#"); str.append(editPass_->GetText()); sock.Send(str.c_str(), str.length()); char buffer[1024] = {0}; sock.Recv(buffer, sizeof(buffer)); std::vector<std::string> v; v.push_back(" YES "); JMessageBox::Show("-ERROR-", buffer, v); Rest(); JForm* form = Singleton<FormManager>::Instance().Get("MainMenuForm"); form->ClearWindow(); form->Show(); */ try { BankSession bs; bs.SetCmd(CMD_LOGIN); bs.SetAttribute("name", editUser_->GetText()); bs.SetAttribute("pass", editPass_->GetText()); Singleton<TransactionManager>::Instance().DoAction(bs); if (bs.GetErrorCode() == 0) { std::vector<std::string> v; v.push_back(" YES "); JMessageBox::Show("-MESSAGE-", "登录成功", v); Rest(); JForm* form = Singleton<FormManager>::Instance().Get("MainMenuForm"); form->ClearWindow(); form->Show(); } else { std::vector<std::string> v; v.push_back(" YES "); JMessageBox::Show("-ERROR-", bs.GetErrorMsg(), v); ClearWindow(); Show(); } } catch (Exception& e) { std::vector<std::string> v; v.push_back(" YES "); JMessageBox::Show("-ERROR-", e.what(), v); ClearWindow(); Show(); } }
void DetailStatementForm::OnKeyEvent(JEvent* e) { int key = e->GetEventCode(); if (key == KEY_ESC) { JForm* form; //ClearWindow(); form = Singleton<FormManager>::Instance().Get("MainMenuForm"); dynamic_cast<MainMenuForm*>(form)->GetItems()[6]->SetCurrent(); form->ClearWindow(); form->Show(); e->Done(); } else if (key == KEY_ENTER) { if (e->GetSender() == btnDetail1_) { JForm* form; ClearWindow(); form = Singleton<FormManager>::Instance().Get("QueryDayBillForm"); form->Show(); e->Done(); } if (e->GetSender() == btnDetail2_) { JForm* form; //ClearWindow(); form = Singleton<FormManager>::Instance().Get("QueryHistoryBillForm"); form->ClearWindow(); form->Show(); e->Done(); } if (e->GetSender() == btnDetail3_) { JForm* form; //ClearWindow(); form = Singleton<FormManager>::Instance().Get("QueryAccountHistoryBillForm"); form->ClearWindow(); form->Show(); e->Done(); } if (e->GetSender() == btnReturn_) { JForm* form; //ClearWindow(); form = Singleton<FormManager>::Instance().Get("MainMenuForm"); dynamic_cast<MainMenuForm*>(form)->GetItems()[6]->SetCurrent(); form->ClearWindow(); form->Show(); e->Done(); } } JForm::OnKeyEvent(e); }