본문 바로가기

STM32/touchGFX_STM32

[touchGFX] Multi-Language

728x90

* 목표 : 버튼을 통해 한/영 언어 선택

 

1. MVP 패턴 구조

 

2. 인터렉션 생성

 

3. Add a new language

 

4. 코드 작성

 

1) Screen1Presenter.hpp

 

public:

  void toggleLanguage();

 

2) Screen1Presenter.cpp

 

#include <touchgfx/Texts.hpp>

#include <texts/TextKeysAndLangueges.hpp>

 

void Screevoid Screen1Presenter::toggleLanguage()
{
LanguageId currentLanguage = Texts::getLanguage();
if(currentLanguage == (LANGUAGES::NUMBER_OF_LANGUAGES - 1))
{
view.setLanguage(0);
}
else
{
view.setLanguage(currentLanguage + 1);
}
}

 

3) Screen1View.hpp

 

#include <touchgfx/Texts.hpp>

 

public:

  void setLanguage(LanguageId lang);

 

protected:

  LanguageId currentLang;

 

4) Screen1View.cpp

 

void Screen1View::setLanguage(LanguageId lang)
{

// Set new languege

Texts::setLanguage(lang);

 

// 언어 변환되는 부분 새로고침
textArea1_2_1.invalidate();
textArea1_2_1_1.invalidate();
}

728x90

'STM32 > touchGFX_STM32' 카테고리의 다른 글

[STM32F746] USART6 송신 test  (0) 2020.09.10
[STM32F746] RS-232  (0) 2020.09.08
[stm32F746] PWM  (0) 2020.09.01
[stm32F746] printf 사용 시 추가해야할 코드  (0) 2020.09.01
[stm32F746] UART + LED control  (0) 2020.09.01