2013-05-31 8 views
0

나는 체크 박스를 사용하여 노트북에 페이지를 추가하는 wxPython GUI를 가지고있다. 체크 박스의 상태가 '참'으로 변경 될 때마다 페이지가 추가됩니다. 그러나 확인란이 상태를 '거짓'으로 변경하면 페이지를 어떻게 삭제합니까?노트북 페이지를 삭제하는 방법은 무엇입니까?

체크 상자가있는 경우 몇 가지가 있으므로 페이지의 ID를 먼저 얻어야합니다.하지만 어떻게해야합니까? 페이지는 다음과 같이 작성됩니다.

def addPage(self, pageTitle): 
    page = Page(self.dataNoteBook) 
    self.dataNoteBook.AddPage(page, pageTitle) 

답변

2

이것은 이름이 지정된 페이지를 찾으면 약간 더 짧아지고 중지됩니다.

def delPage(self, pageTitle): 
    for index in range(self.dataNoteBook.GetPageCount()): 
     if self.dataNoteBook.GetPageText(index) == pageTitle: 
      self.dataNoteBook.DeletePage(index) 
      self.dataNoteBook.SendSizeEvent() 
      break 
+0

건배 Yoriz, 내가 작성한 기능으로 페이지를 삭제할 때도 오류가 발생하지 않습니다. –

1

괜찮 았던 방법인지는 확실하지 않지만 작동하는 방법을 찾았습니다.

def addPage(self, pageTitle): 
    page = Page(self.dataNoteBook) 
    page.SetLabel(pageTitle) 
    self.dataNoteBook.AddPage(page, pageTitle) 

하고 페이지를 삭제하는 기능을 작성되었습니다 :

def delPage(self, pageTitle): 
    for index in range(self.dataNoteBook.GetPageCount()): 
     page = self.dataNoteBook.GetPage(index) 
     if page.GetLabel() == pageTitle: 
      self.dataNoteBook.DeletePage(index) 
      self.dataNoteBook.SendSizeEvent() 

을 제안보다 효율적인 것을 얻을 때까지 나는이 열려있어 페이지를 추가 할

기능은 한 번 더 라인을 받았습니다 ! :)

토마스