Re: AttributeError: 'TreeCtrl' object has no attribute 'GetItem'
Andrea Gavana <[email protected]> Wed, 21 Apr 2021 20:29:57 +0200
| Newsgroups | gmane.comp.python.wxpython |
|---|---|
| Message-ID | <CAEf70bxisjXonS-KMGpaW3WuDsr4wEr+qd2ipefco+0VSPWiwQ@mail.gmail.com> |
On Wed, 21 Apr 2021 at 20.25, RF <[email protected]> wrote: > I see. OK I will attach my code in the future. Good point. > > I downloaded the extras zip file and unzipped it. What do I do with these > *.pdb files? Whay app opens them? > You only need the demo, everything else is not necessary. > > On Wednesday, April 21, 2021 at 10:55:42 AM UTC-7 Infinity77 wrote: > >> Hi, >> >> On Wed, 21 Apr 2021 at 19:46, RF <[email protected]> wrote: >> >>> I indented the def OnSelChanged(self, event): function and it now works. >>> >>> Is that because tree was created inside the MainFrame class, so >>> therefore, the bind has to be within the same block? >>> >> >> When I said to properly format your code, I meant either attach a Python >> file to your message or make sure that your email client does not mess up >> the indentation. This is how you code looks on my GMail: >> >> [image: image.png] >> >> There is no indentation and it's very difficult to follow. Since you're >> new to Python and wxPython, I strongly encourage you to take a look at the >> wxPython demo - it has pretty much everything: >> >> https://extras.wxpython.org/wxPython4/extras/4.1.1/ >> >> Andrea. >> >> >> >>> >>> On Wednesday, April 21, 2021 at 10:42:47 AM UTC-7 RF wrote: >>> >>>> Hi Andrea, >>>> >>>> > Please properly format your code. >>>> >>>> I have spent the last two days trying to structure my code 'properly'. >>>> I am new to python so I have looked at a lot of coding examples. There are >>>> a lot of different ways to structure python code. I thought I had settled >>>> on one of the better ways to do this, but apparently not! But I am eager to >>>> learn how to do it properly. >>>> >>>> When you say my code is 'messed up', do you mean by indentation or >>>> where my functions are located? >>>> >>>> On Wednesday, April 21, 2021 at 10:10:38 AM UTC-7 Infinity77 wrote: >>>> >>>>> Hi, >>>>> >>>>> On Wed, 21 Apr 2021 at 18.57, RF <[email protected]> wrote: >>>>> >>>>>> Hi Tim, >>>>>> >>>>>> I'm trying to get the text of the node when I click on the node. This >>>>>> is a directory of files and I want to grab the filename when I click on a >>>>>> given node. >>>>>> >>>>>> I'm pretty confused with these methods...I've not been able to get >>>>>> any of them to work. >>>>>> >>>>>> GetSelection() >>>>>> GetFocusedItem() >>>>>> GetItemText() >>>>>> >>>>> >>>>> >>>>> The event itself does have a GetItem method. The problems related to >>>>> your source code are: >>>>> >>>>> - at least for me, the indentation is all messed up >>>>> - please take a look at how to use Bind(), I.e., not this: >>>>> >>>>> self.tree.Bind(wx.EVT_TREE_SEL_CHANGED, OnSelChanged(self, self.tree) >>>>> , self.tree) >>>>> >>>>> But this: >>>>> >>>>> self.tree.Bind(wx.EVT_TREE_SEL_CHANGED, OnSelChanged) >>>>> >>>>> Not sure if OnSelChanged is a class method for you or just a function. >>>>> Please properly format your code. >>>>> >>>>> Andrea. >>>>> >>>>> >>>>>> On Wednesday, April 21, 2021 at 9:15:18 AM UTC-7 Tim Roberts wrote: >>>>>> >>>>>>> RF wrote: >>>>>>> >>>>>>> So I've googled around on this error and found some others who've >>>>>>> had this problem. But I can't seem to solve it for my own app. >>>>>>> >>>>>>> I get the error from the bind event: def OnSelChanged(self, event): >>>>>>> >>>>>>> ... >>>>>>> >>>>>>> def OnSelChanged(self, event): >>>>>>> item = event.GetItem() >>>>>>> print(self.tree.GetItemText(item)) >>>>>>> >>>>>>> Well, the error is correct. The wx.TreeCtrl object does not have a >>>>>>> GetItem method. What are you trying to do here? Is it possible you wanted >>>>>>> GetSelection() instead? >>>>>>> >>>>>>> -- >>>>>>> Tim Roberts, [email protected] >>>>>>> Providenza & Boekelheide, Inc. >>>>>>> >>>>>>> -- >>>>>> 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/85152e3f-30ea-4c61-a20f-81c2a59581e7n%40googlegroups.com >>>>>> <https://groups.google.com/d/msgid/wxpython-users/85152e3f-30ea-4c61-a20f-81c2a59581e7n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> -- >>> 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/351ca3db-1a83-440a-acbe-7139d31ed93dn%40googlegroups.com >>> <https://groups.google.com/d/msgid/wxpython-users/351ca3db-1a83-440a-acbe-7139d31ed93dn%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- > 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/88b63d14-2359-418e-8f86-8993adb41f87n%40googlegroups.com > <https://groups.google.com/d/msgid/wxpython-users/88b63d14-2359-418e-8f86-8993adb41f87n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- 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/CAEf70bxisjXonS-KMGpaW3WuDsr4wEr%2Bqd2ipefco%2B0VSPWiwQ%40mail.gmail.com.