Tkinter의 클래스 간 변수에 액세스
tkinter에서는 다른 클래스에 정의된 변수에 액세스하는 것이 바람직한 상황에 직면합니다. 이를 위해서는 이러한 클래스 간의 연결 설정과 참조가 필요합니다.
참조 설정
다른 클래스의 변수에 액세스하려면 해당 클래스에 대한 참조를 얻어야 합니다. 귀하의 예에서 PageTwo는 PageOne의 self.v 변수에 액세스해야 합니다. 이를 달성하려면 다음 단계를 사용하세요.
# Get a reference to the controller in PageOne self.controller = controller # Define a method in the controller to return a reference to any page def get_page(self, page_class): return self.frames[page_class]
이 방법을 활용하면 이제 다음과 같이 PageTwo의 self.v 변수에 액세스할 수 있습니다.
# Get a reference to PageOne page1 = self.controller.get_page(PageOne) # Access the self.v variable from PageOne page1.v.set("Hello, world")
공유 데이터
클래스 간 변수에 액세스하는 또 다른 접근 방식은 공유 데이터를 활용하는 것입니다. 기본 애플리케이션 클래스(SampleApp)에서 공유 변수 사전을 생성하고 컨트롤러를 통해 모든 페이지에 액세스할 수 있도록 합니다.
# Create a dictionary of shared variables in SampleApp self.shared_data = { "username": tk.StringVar(), "password": tk.StringVar(), ... }
다음과 같이 모든 페이지의 공유 데이터에 액세스합니다.
# Get the shared data from the controller username_var = self.controller.shared_data["username"] # Set the username username_var.set("my_username")
공유 데이터를 사용하면 페이지가 분리되어 서로의 구현에 덜 의존하게 됩니다. 이는 더 큰 유연성을 제공하고 유지 관리를 단순화합니다.
위 내용은 Tkinter 애플리케이션 내의 다른 클래스에 정의된 변수에 어떻게 액세스할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!