GUI로 간단한 추측 - 숫자 게임을 만들고 있습니다. 사용자가 텍스트 상자에 숫자를 입력하고 "확인"을 누르기를 기다리는 루프를 기다려야합니다. 루프 내부의 이벤트를 어떻게 대기합니까?C# WinForms : 무한 루프 내에서 버튼 누르기를 기다리는 중
참고 : 메시지 상자를 원하지 않습니다. 이것은 메인 윈도우에서 이루어 지므로 입력을 기다릴 필요가 있습니다.
편집 : 자신을 더 잘 설명해야합니다. 나는 GUI 안에 루프가 있다는 것을 알고있다. 내가 원하는 건 또 다른 루프를 메서드 안에 넣는 것이다. 어쩌면 이것을 할 수있는 더 좋은 방법이있을 것입니다. 버튼의 이벤트 핸들러 내부에 코드를 작성할 수 있습니다. 이제 생각해 보겠습니다. 글로벌 변수가 필요합니다. Whataver, 나는 그것에 대해 생각할 것이다. 그러나 나는 나의 질문이 지금 더 분명하기를 바란다.
EDIT 2 : 죄송합니다. 내 질문에 명확하지 않았으며 편집이 많은 도움을주지 못했습니다. 우선, 코드가 너무 커서 여기에 게시 할 수 없습니다. 아마도 GUI의 스크린 샷을 게시해야 할 것이므로 많이 사용하지 않을 것입니다. 기본적으로 두 개의 필드, "최대 개수"및 "허용 된 추측 수"가 있습니다. 사용자는이 두 가지를 입력하고 "재생"을 클릭합니다. 텍스트 상자와 "추측"버튼이있는 새 패널을 사용할 수 있습니다. 사용자는 추측을 입력하고 프로그램이 올바른지 확인합니다.
두 번째 무한 루프의 목적은 전역 변수를 피하는 것입니다. 사용자가 "재생"을 클릭 할 때마다 게임은 올바른 추측으로 새로운 난수를 생성해야합니다. 모든 것이 메서드 내부에서 처리되면 아무런 문제가 없습니다. 그러나 "추측"버튼의 이벤트 핸들러가 여러 번 호출되면 숫자는 Form의 인스턴스 변수로 저장되어야합니다. 물론, 그다지 큰 문제는 아니지만, 그 숫자는 폼이 아닌 현재 게임을 지시하는 메소드의 속성이어야한다고 생각합니다.
또한 메서드 외부의 추측 수를 추적해야합니다. 다시 말하지만, 큰 문제는 아닙니다. 할 수만 있으면 전역을 피하고 싶습니다.
다시 한 번 내 질문에 지나치게 분명하지 않은 점에 대해 사과드립니다. 나는 일종의 피곤하고, 나는 너무 많이 쓰는 것 같은 기분이 들지 않았다. 아직도 명확하지 않으면 걱정하지 마십시오. 나는 뭔가 생각할 것이다.
아마도 무한 루프의 목적이 무엇인지 설명하고 아마도 코드를 게시해야합니다. 그러면 우리가 당신이 초보자라고 가정하는 것을 멈출 수 있습니다. – ichiban
항상 모든 것을 추적하는 Game 클래스를 만들 수 있습니다. –