본문 바로가기

Study/C++

[미니 스타듀밸리] 3. GUI창 상황에 맞게 펼치기

이 포스팅에서 할 일:
  1. 상황에 맞는 GUI 꺼내기

 

//MainForm.cpp ... GUI의 메인 역할을 할 .cpp파일

void main() {

	//앞 포스팅 내용 복붙
	Application::EnableVisualStyles();
	Application::SetCompatibleTextRenderingDefault(false);

	//current: 현재 어떤 화면을 꺼내야 하는지 결정
	FORM_TYPE current = FORM_TYPE::TITLE;
	GUI::MainForm title(&current);
	GUI::MapForm field(&current);

	//current값에 따라 화면 실행
	Application::Run(% title);
	if (current == FORM_TYPE::FIELD) Application::Run(% field);

}

 

 

//MainForm.h

public:
		//어떤 화면을 띄워야 하는지 currentForm에 저장
		FORM_TYPE *currentForm;
		MainForm(FORM_TYPE *currentForm):MainForm()
		{
			this->currentForm = currentForm;
		}
        
private: 
		System::Void btn_Start_Click(System::Object^ sender, System::EventArgs^ e){
        	//currentForm의 값을 다음 화면으로 바꾸기
			*currentForm = FORM_TYPE::FIELD;
			this->Close();
		}