2016-10-19 31 views
0

현재 TextCtrlAutoComplete (https://wiki.wxpython.org/TextCtrlAutoComplete) 및 wxFormBuilder에 문제가 있습니다.wxformbuilder의 사용자 지정 컨트롤

저는 자동 완성 버전을 사용하고 싶습니다만, wxFormbuilder가 사용자 정의 컨트롤을 사용할 수있는 한 사용할 수있는 방법이 없습니다.

어떻게 올바르게 클래스를 생성 할 수 있습니까? 또는 하위 클래스의 멤버를 올바르게 재정의하는 방법?

또한 해결 방법으로 문제가 :

나는 중첩 된 몇 wxBoxsizers 있습니다. 이제 TextCtrl을 대체 할 자리 표시 자로 사용합니다.

은 내가 할 경우 :

self.m_textCtrlAlias = TextCtrlAutoComplete(self, [wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0], colSearch=True,choices=['example', 'hello', 'world', 'foo', 'bar']) 

컨트롤 폼의 왼쪽 상단 모서리에 끝납니다. 다른 컨트롤을 대체 할 방법이 있다면. 마스터 클래스에서 wxBoxSizer를 사용하여 멤버로 설정하지 않았습니다.

누구나 다른 제안이 있습니다. 공개적으로 할 수 있습니다.

답변

2

내가 한 방식 : 컨트롤이 다른 컨트롤의 하위 클래스 인 경우 wxTextCtrl의 하위 클래스라고 말한 다음 wxFormBuilder를 사용하여 wxTextCtrl을 추가합니다. 그런 다음 TextCtrlAutoComplete 인 것으로 이해하면 wxTextCtrl의 하위 클래스 이름을 컨트롤의 클래스 이름으로 설정하십시오.

당신 (Pimmetje)도 언급 한 바와 같이

"헤더는 파이썬에 대한 가져 오기를 설정하는 데 사용할 수 있습니다."

+0

그 무언가 때문에 u는이 또는 u가 생성 된 코드에 교체 않았다 않는 스크립트를 했습니까 나는 피하고 싶다. – Pimmetje

+0

wxFormBuilder를 사용하는 인터페이스의 디자인 단계에서는이 작업이 수행되지 않습니다. 이름은 생성 된 코드에서 자동으로 대체됩니다. – macroland

+0

어디에서 할 수 있습니까? – Pimmetje