Re: Importing wxWidgets Help
Tim Roberts <[email protected]> Thu, 22 Apr 2021 11:09:05 -0700 (PDT)
| Newsgroups | gmane.comp.python.wxpython |
|---|---|
| Message-ID | <[email protected]> |
One more thing I forgot. In your "MyTreeCtrl.__init__", you are trying to create another MyTreeCtrl. Don't do that. Within that class, you already ARE the MyTreeCtrl. You don't need "self.tree.Bind", you just need "self.Bind" On Thursday, April 22, 2021 at 11:05:31 AM UTC-7 Tim Roberts wrote: > You have two immediate problems. First, in CoreFrame where you > instantiate MyTreeCtrl, you are passing `vbox` as the parent. This is one > of the more confusing aspects of wxWidgets. The windows and the sizers > live in two separate hierarchies. A sizer controls a set of windows, but > it is not itself a window, and thus cannot be a parent. You need to pass > "self" as the parent, so the frame becomes the parent window. Essentially, > you create a whole bunch of windows in a hierarchy, and then you add those > windows to sizers (which have their own hierarchy) to control their > placement. > > The second problem is in "MyTreeCtrl.__init__" when you call > "wx.TreeCtrl.__init__". If you look at the documentation, you'll see that > the parameters for that start out self, parent, id, pos, size, style, ... > You are not passing a "pos", which is why you get an error. Now, that's a > perfectly OK thing to do, but once you omit a positional parameter, the > rest have to be specified by name: "wx.TreeCtrl.__init__(self, parent, id, > size=size, style=style)". That should get you a little farther. > > On Wednesday, April 21, 2021 at 8:12:59 PM UTC-7 [email protected] > wrote: > >> I uploaded an older copy of my pxCore.py file. Attached is my latest >> version that I should have uploaded previously. >> >> On Wednesday, April 21, 2021 at 8:11:09 PM UTC-7 RF wrote: >> >>> So I decided to start out by incorporating my class MyTreeCtrl(wx.TreeCtrl): >>> at the top of my core project file pxCore.py. I have attached it as a zip >>> file. >>> >>> I just can't figure out how to make the call to create the TreeCtrl >>> without getting some kind of error. >>> >>> Currently the error in line 6 is: TypeError: TreeCtrl(): arguments did >>> not match any overloaded call: >>> >>> Thank you for any help. >>> >>> On Wednesday, April 21, 2021 at 3:35:38 PM UTC-7 RF wrote: >>> >>>> >>>> I've written a class TreeCtrl python file. I'm trying to import it into >>>> my project's main python file. >>>> >>>> I can't find any examples of how this should be done. The examples I've >>>> found are very simple ones like Car.py located here: >>>> https://www.guru99.com/import-module-python.html >>>> >>>> But those are very simple examples and if I copy their structure they >>>> don't work for wx widgets. >>>> >>>> My project will use various widgets such as TreeCtrl, StyledTextCtrl, >>>> Toolbar and Menu. I thought I would put each of them into their own class >>>> file and import them into my main core python file (to keep file sizes >>>> down). >>>> >>>> Does that sound reasonable or should I just have the classes at the top >>>> of my main python file and not do the imports? >>>> >>>> -- You received this message because you are subscribed to the Google Groups "wxPython-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/wxpython-users/2b43c43f-e85b-4cd8-8307-1f33ec4d06d2n%40googlegroups.com.