Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Property with a list as possible values for custom widget?

Property with a list as possible values for custom widget?

Scheduled Pinned Locked Moved Unsolved General and Desktop
26 Posts 4 Posters 9.4k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    Panoss
    wrote on last edited by
    #12

    Even though referred in the examples you posted, PyQt4.QtCore.QStringList doesn't exist!!

    mrjjM 1 Reply Last reply
    0
    • P Panoss

      Even though referred in the examples you posted, PyQt4.QtCore.QStringList doesn't exist!!

      mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by mrjj
      #13

      @Panoss
      And you have something like
      from PyQt4.QtCore import QStringList
      or similar import ?

      1 Reply Last reply
      0
      • P Offline
        P Offline
        Panoss
        wrote on last edited by Panoss
        #14

        I find nothing similar to QStringList in PyQt4.QtCore.
        That's quite strange, either it has been moved...or I have no idea! :)

        1 Reply Last reply
        0
        • P Offline
          P Offline
          Panoss
          wrote on last edited by Panoss
          #15

          From here:

          From PyQt4 4.6+ in Python3 QString doesn't exist and you are supposed to use ordinary Python3 unicode objects (string literals). To do this so that your code will work in both Python 2.x AND Python 3.x you can do following:

          try:
              from PyQt4.QtCore import QString
          except ImportError:
              # we are using Python3 so QString is not defined
              QString = type("")
          

          Ok, this for QString.

          From here:
          The QList class is a template class that provides lists. available in C++ only. But in python, it have python list data-type ready to used. If you want to use behavior like list you can use python list similar QList

          So how will I do it? QList = []?

          (with '[]' we define a list in python)

          1 Reply Last reply
          1
          • P Offline
            P Offline
            Panoss
            wrote on last edited by
            #16

            I tried this:

            QList = []
            
            ContainersWidgets = QtCore.pyqtProperty(QList, getContainersWidgets, setContainersWidgets)
            

            But I get an error:
            "ContainersWidgets = QtCore.pyqtProperty(QList, getContainersWidgets, setContainersWidgets)
            TypeError: bytes or ASCII string expected not 'list'"

            It doesn't accept a List, only bytes or ASCII.

            mrjjM jsulmJ 2 Replies Last reply
            0
            • P Panoss

              I tried this:

              QList = []
              
              ContainersWidgets = QtCore.pyqtProperty(QList, getContainersWidgets, setContainersWidgets)
              

              But I get an error:
              "ContainersWidgets = QtCore.pyqtProperty(QList, getContainersWidgets, setContainersWidgets)
              TypeError: bytes or ASCII string expected not 'list'"

              It doesn't accept a List, only bytes or ASCII.

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by
              #17

              I think you need a python head for this :)
              Are you using
              https://pypi.python.org/pypi/PyQt5

              or what version ?

              1 Reply Last reply
              0
              • P Offline
                P Offline
                Panoss
                wrote on last edited by
                #18

                The previous version, PyQt4.

                mrjjM 1 Reply Last reply
                0
                • P Panoss

                  The previous version, PyQt4.

                  mrjjM Offline
                  mrjjM Offline
                  mrjj
                  Lifetime Qt Champion
                  wrote on last edited by
                  #19

                  @Panoss said in Property with a list as possible values for custom widget?:

                  PyQt4

                  ok it really should have the qstringlist

                  http://pyqt.sourceforge.net/Docs/PyQt4/qstringlist.html

                  1 Reply Last reply
                  0
                  • P Offline
                    P Offline
                    Panoss
                    wrote on last edited by
                    #20

                    Yes it should, but it doesn't :) !!!

                    mrjjM 1 Reply Last reply
                    0
                    • P Panoss

                      Yes it should, but it doesn't :) !!!

                      mrjjM Offline
                      mrjjM Offline
                      mrjj
                      Lifetime Qt Champion
                      wrote on last edited by
                      #21

                      @Panoss
                      Well give it some hours. Maybe a Qt python user know the secret of
                      how to have it available.

                      1 Reply Last reply
                      0
                      • P Offline
                        P Offline
                        Panoss
                        wrote on last edited by Panoss
                        #22

                        https://hub.qgis.org/wiki/17/Python_plugin_API_changes_from_18_to_20#Replace-QStringList-with-list

                        "Replace QList methods with python list function"

                        So both Qlist and QStringList are replaced by list.

                        mrjjM 1 Reply Last reply
                        0
                        • P Panoss

                          https://hub.qgis.org/wiki/17/Python_plugin_API_changes_from_18_to_20#Replace-QStringList-with-list

                          "Replace QList methods with python list function"

                          So both Qlist and QStringList are replaced by list.

                          mrjjM Offline
                          mrjjM Offline
                          mrjj
                          Lifetime Qt Champion
                          wrote on last edited by
                          #23

                          @Panoss

                          But is that no QGIS API ?
                          is that the same as
                          https://sourceforge.net/projects/pyqt/

                          It looks as some other binding. So i Guess that is why its not there.

                          1 Reply Last reply
                          0
                          • P Offline
                            P Offline
                            Panoss
                            wrote on last edited by
                            #24

                            Well now I'm confused, I don't really know.
                            I 'll have to 'dig' more.

                            1 Reply Last reply
                            1
                            • P Panoss

                              I tried this:

                              QList = []
                              
                              ContainersWidgets = QtCore.pyqtProperty(QList, getContainersWidgets, setContainersWidgets)
                              

                              But I get an error:
                              "ContainersWidgets = QtCore.pyqtProperty(QList, getContainersWidgets, setContainersWidgets)
                              TypeError: bytes or ASCII string expected not 'list'"

                              It doesn't accept a List, only bytes or ASCII.

                              jsulmJ Online
                              jsulmJ Online
                              jsulm
                              Lifetime Qt Champion
                              wrote on last edited by
                              #25

                              @Panoss said in Property with a list as possible values for custom widget?:

                              QList = []

                              Should be

                              QList = type([])
                              

                              https://forum.qt.io/topic/113070/qt-code-of-conduct

                              P 1 Reply Last reply
                              2
                              • jsulmJ jsulm

                                @Panoss said in Property with a list as possible values for custom widget?:

                                QList = []

                                Should be

                                QList = type([])
                                
                                P Offline
                                P Offline
                                Panoss
                                wrote on last edited by Panoss
                                #26

                                @jsulm said in Property with a list as possible values for custom widget?:

                                @Panoss said in Property with a list as possible values for custom widget?:

                                QList = []

                                Should be

                                QList = type([])
                                

                                You re right!!!
                                Now the error is gone!

                                But my property doesn't appear in Qt Designer.

                                1 Reply Last reply
                                0

                                • Login

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • Users
                                • Groups
                                • Search
                                • Get Qt Extensions
                                • Unsolved