2013-12-23 2 views
0

다른 페이지에 WAnchor가있어 내부 경로가 변경됩니다. 또한 internalPathChanged()에 반응하는 함수 internalPathChange()이 있는데 내부 경로에 따라 올바른 함수를 호출합니다.Wt를 사용하여 다른 페이지에 일부 값을 POST 할 수 있습니까?

POST를 사용하여 첫 번째 페이지에서 두 번째 페이지로 값을 제공하려면 어떻게해야합니까?

+0

안녕하세요. Neyuh, 좋은 질문입니다. Pieter가 샘플을 게시물에 적용하는 방법을 보여주기 위해 관련 비트를 유지하면서 Wt 코드의 스켈레톤 개요를 게시하십시오. 최고의 소원. – Tom

답변

1

위젯을 사용해야합니다. Wt는 포스트 및 다른 html 페이지의 개념을 알지 못합니다.

위의 예는 HangmanGame.C 파일에서 here입니다. 자신 만의 위젯을 만들고 위젯의 생성자에서 필요한 값을 지정합니다. 그런 다음 그들은 새로운 "페이지"만 표시하기 위해 Wt::WStackedWidget을 사용합니다. 그들은 다음 코드를 사용하십시오

는 :

void HangmanGame::handleInternalPath(const std::string &internalPath) 
{ 
    if (session_.login().loggedIn()) { 
    if (internalPath == "/play") 
     showGame(); 
    else if (internalPath == "/highscores") 
     showHighScores(); 
    else 
     WApplication::instance()->setInternalPath("/play", true); 
    } 
} 

void HangmanGame::showHighScores() 
{ 
    if (!scores_) 
    scores_ = new HighScoresWidget(&session_, mainStack_); 

    mainStack_->setCurrentWidget(scores_); 
    scores_->update(); 

    backToGameAnchor_->removeStyleClass("selected-link"); 
    scoresAnchor_->addStyleClass("selected-link"); 
} 

void HangmanGame::showGame() 
{ 
    if (!game_) { 
    game_ = new HangmanWidget(session_.userName(), mainStack_); 
    game_->scoreUpdated().connect(&session_, &Session::addToScore); 
    } 

    mainStack_->setCurrentWidget(game_); 

    backToGameAnchor_->addStyleClass("selected-link"); 
    scoresAnchor_->removeStyleClass("selected-link"); 
} 

그래서이 예에서 HighScoresWidgetHangmanWidget는 값을 게시 할 수있는 "페이지"입니다.

관련 문제