wxPython worries

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Robert

    #16
    Re: wxPython worries

    What is needed is a good "Programmin g wxPython"!

    Comment

    • MetalOne

      #17
      Re: wxPython worries

      I have recently been trying to build some GUIs with wxWindows. The
      first problem that I ran across involved not being able to send and
      event from a worker thread to the GUI thread and get the GUI thread to
      process the event while the user had a menu pulled down. I wrote a
      bug report and this has since been fixed. Tkinter has issues here
      also. There is no means for a worker thread to put an event in the
      GUI thread.

      The second problem that I have run across is that tab order between
      controls is the order that controls are added. You can't get tabbing
      to skip a control. If you dynamically add/remove controls you can't
      achieve your desired tab order.

      wxWindows seems like a very impressive work. The demo is certainly
      impressive. I also suppose I shouldn't rant to much about something
      that is free. However my first two GUIs hit critical problems, and
      these were really simple GUIs. Granted, the first problem has been
      fixed now, and I have not yet written a bug report on the second.

      Tkinter is also giving me problems. I have been trying to add
      controls to a canvas and to have a scrollbar that will scroll the
      controls on the canvas. I think I have it figured out now, but it is
      damn near impossible to figure out from the documentation. I had to
      scour the internet looking for solutions.

      I have also played with displaying video in both wxWindows and Tk.
      I have raw gray scale data simply as a list of values range 0-255.
      Using PIL I can easily convert to a format wxWindows and Tk can
      display. I get around 30 fps with wxWindows and 15 fps with Tk.
      However, all images wxWindows displays must be full 24-bit color. If
      the images didn't need to be expanded to (r,g,b) I would expect
      signifcant speed up. I don't know why Tk is so much slower.

      wxWindows and Tk are the only toolkits that wrap native Windows
      controls. The others all emulate controls. I am thinking about
      trying out another toolkit.
      FOX, FLTK or GTK.

      I am having enough trouble convincing people to use Python. I'd never
      be able to get my work to purchase Qt. They would prefer to do
      everything in VB6.

      Comment

      • stephane ancelot

        #18
        Re: wxPython worries

        Hi,
        I have recently evaluated wxpython because I am coming from fox (for 3 years)
        , but fox lacks GUI designer and wxwindows with wxpython and boa-constructor
        seems to solve the problem

        Thanks for your advice in wxwindows.

        If you want informations about fox I can help you.

        Best Regards
        steph


        Le Vendredi 16 Janvier 2004 07:57, MetalOne a écrit :[color=blue]
        > I have recently been trying to build some GUIs with wxWindows. The
        > first problem that I ran across involved not being able to send and
        > event from a worker thread to the GUI thread and get the GUI thread to
        > process the event while the user had a menu pulled down. I wrote a
        > bug report and this has since been fixed. Tkinter has issues here
        > also. There is no means for a worker thread to put an event in the
        > GUI thread.
        >
        > The second problem that I have run across is that tab order between
        > controls is the order that controls are added. You can't get tabbing
        > to skip a control. If you dynamically add/remove controls you can't
        > achieve your desired tab order.
        >
        > wxWindows seems like a very impressive work. The demo is certainly
        > impressive. I also suppose I shouldn't rant to much about something
        > that is free. However my first two GUIs hit critical problems, and
        > these were really simple GUIs. Granted, the first problem has been
        > fixed now, and I have not yet written a bug report on the second.
        >
        > Tkinter is also giving me problems. I have been trying to add
        > controls to a canvas and to have a scrollbar that will scroll the
        > controls on the canvas. I think I have it figured out now, but it is
        > damn near impossible to figure out from the documentation. I had to
        > scour the internet looking for solutions.
        >
        > I have also played with displaying video in both wxWindows and Tk.
        > I have raw gray scale data simply as a list of values range 0-255.
        > Using PIL I can easily convert to a format wxWindows and Tk can
        > display. I get around 30 fps with wxWindows and 15 fps with Tk.
        > However, all images wxWindows displays must be full 24-bit color. If
        > the images didn't need to be expanded to (r,g,b) I would expect
        > signifcant speed up. I don't know why Tk is so much slower.
        >
        > wxWindows and Tk are the only toolkits that wrap native Windows
        > controls. The others all emulate controls. I am thinking about
        > trying out another toolkit.
        > FOX, FLTK or GTK.
        >
        > I am having enough trouble convincing people to use Python. I'd never
        > be able to get my work to purchase Qt. They would prefer to do
        > everything in VB6.[/color]


        Comment

        • Dennis Lee Bieber

          #19
          Re: [OT] AS/400

          Jarek Zgoda fed this fish to the penguins on Thursday 15 January 2004
          10:12 am:

          [color=blue]
          >
          > Since nobody ever produced any other. Only IBM produced machines that
          > can be called "midrange" (something between microcomputer and "real
          > computer", the famous S/390 mainframe). They still use this
          > terminology.
          >[/color]

          The late DEC might want to take you up on that... The VAX series was
          commonly billed as a "super-Mini", not a mainframe, and definitely not
          a micro. Micro's were the Altair, Ohio Scientific, Sphere, Apple-II,
          TRS-80... Mainframes were IBM (360+), SDS/Xerox Sigma, Univac,
          Burroughs...



          --[color=blue]
          > =============== =============== =============== =============== == <
          > wlfraed@ix.netc om.com | Wulfraed Dennis Lee Bieber KD6MOG <
          > wulfraed@dm.net | Bestiaria Support Staff <
          > =============== =============== =============== =============== == <
          > Bestiaria Home Page: http://www.beastie.dm.net/ <
          > Home Page: http://www.dm.net/~wulfraed/ <[/color]

          Comment

          • Eric Brunel

            #20
            Re: wxPython worries

            MetalOne wrote:
            [snip][color=blue]
            > Tkinter has issues here
            > also. There is no means for a worker thread to put an event in the
            > GUI thread.[/color]

            We've successively used the event_generate method on Tkinter widgets from worker
            threads to communicate with the main thread. You can also have less
            straightforward solutions involving the main thread regularly checking for a
            Queue or Event (using the after method) to get events from the worker threads.
            So you definitely can't say there's "no means" to do it. But it's clearly not as
            easy as it should.

            [snip][color=blue]
            > Tkinter is also giving me problems. I have been trying to add
            > controls to a canvas and to have a scrollbar that will scroll the
            > controls on the canvas. I think I have it figured out now, but it is
            > damn near impossible to figure out from the documentation. I had to
            > scour the internet looking for solutions.[/color]

            The documentation is clearly the main problem with Tkinter. It's not really that
            there's not enough, but useful information must be gathered from too many places...

            The best places are:
            - For beginners, "Thinking in Tkinter" from Stephen Ferg:

            - Tkinter demos in the Python distribution: unfortunately one of Tkinter's best
            kept secrets. Just go to <Python root>/Demo/tkinter and look at the scripts.
            I've learnt a lot from them, even if they're far from perfect (where on earth
            did they get the idea to make all their application inherit from Frame?!)
            - "An introduction to Tkinter" from Fredrik Lundh:
            http://www.pythonware.com/library/tk...tion/index.htm - very useful,
            but unfortunately incomplete...
            - And finally the man pages for tcl/tk: http://www.tcl.tk/man/ - only useful
            once you've practiced a bit, since you must know how to translate tcl/tk to
            Python/Tkinter to be able to use it.

            The book "Python and Tkinter programming" from John Grayson seems interesting,
            but I never used it myself. You can get an idea of its contents and download the
            example scripts here: http://www.manning.com/grayson/

            HTH
            --
            - Eric Brunel <eric dot brunel at pragmadev dot com> -
            PragmaDev : Real Time Software Development Tools - http://www.pragmadev.com

            Comment

            • Dennis Lee Bieber

              #21
              Re: [OT] AS/400

              Cousin Stanley fed this fish to the penguins on Thursday 15 January
              2004 12:33 pm:

              [color=blue]
              >
              > Honeywell also produced a line of mid-range machines
              > called the Level 6 minicomputers ....
              >[/color]
              Ack... the infamous Level-6...

              My college (now a university) mainframe was a Xerox Sigma-6 (Honeywell
              bought out the Xerox line; of course, the Xerox line was bought out
              from SDS, which was created by a bunch of IBM renegades -- hence the
              use of EBCDIC rather than ASCII <G>). We had a lot of Gandalf
              communication racks to handle the terminals (only n-of-M terminals
              could be live at a time, the Gandalf stuff controlled allocating
              terminals to the mainframe).

              One year Honeywell persuaded the college that a Level-6 could be used
              to replace most of the inflexible Gandalf gear... As I recall, it was
              obtained with pretty much no OS or software -- a system definition file
              for the Sigma's Meta-Symbol assembler was used to produce absolute
              level-6 binary files (Meta-Symbol was an assembler that did not know
              /any/ instruction set natively -- even the Sigma instruction set had to
              be loaded using a system definition file -- though "standard
              instruction formats" did have predefined "control macros". One defined
              an instruction via declarations of the form:

              LD cmd,2,3,3 b'01',af(1),af( 2)

              [note -- that's actually an 8080 MOV instruction masquerading as a
              LoaD... cmd defined #bits per field, then we list a constant,
              ArgumentField(p osition)...]).

              Back to the Level-6... It worked great as a terminal server... until
              the heat built up...

              Apparently the main PC cards were mounted horizontally. When they got
              warm they'd sag... Whoops, there went the connections to the
              backplane... When it came back on-line one often found their terminal
              was now connected to a totally different user's process. I once ended
              up with a local high-school's account (they were on one of the /five/
              dial-up modems that were available).

              --[color=blue]
              > =============== =============== =============== =============== == <
              > wlfraed@ix.netc om.com | Wulfraed Dennis Lee Bieber KD6MOG <
              > wulfraed@dm.net | Bestiaria Support Staff <
              > =============== =============== =============== =============== == <
              > Bestiaria Home Page: http://www.beastie.dm.net/ <
              > Home Page: http://www.dm.net/~wulfraed/ <[/color]

              Comment

              • Jorge Godoy

                #22
                Re: wxPython worries

                On Friday 16 January 2004 04:57 MetalOne wrote in
                <92c59a2c.04011 52257.5b93167b@ posting.google. com>:
                [color=blue]
                > I also suppose I shouldn't rant to much about something that is
                > free. However my first two GUIs hit critical problems, and
                > these were really simple GUIs. Granted, the first problem has been
                > fixed now, and I have not yet written a bug report on the second.[/color]

                I think that ranting is good *IF* it has a bug report to the
                developers to back it up.

                Developers can't imagine all the uses people will do from their work
                and they need to know what happened when you tried doing something so
                that they can help you: fixing the problem, pointing another way of
                doing it or even saying that it can't be done and making you stop
                loosing your time trying to figure out what you can do :-)


                With regards to the notebooks page, have you seen that there are two
                methods: AddPage and InsertPage? With InsertPage you can specify the
                position where the page is to be inserted, putting them on the
                desired order. But I don't know if you already tried that and it
                didn't do what you expected...


                Be seeing you,
                --
                Godoy. <godoy@ieee.org >

                Comment

                • Jarek Zgoda

                  #23
                  Re: [OT] AS/400

                  Cameron Laird <claird@lairds. com> pisze:
                  [color=blue][color=green][color=darkred]
                  >>> Why is it the best minicomputer ever made?
                  >>> I really want to know![/color]
                  >>
                  >>Since nobody ever produced any other. Only IBM produced machines that
                  >>can be called "midrange" (something between microcomputer and "real
                  >>computer", the famous S/390 mainframe). They still use this terminology.[/color]
                  > .
                  > .
                  > .
                  > Sneaky, Jarek; but there were a LOT of "minicomput er"
                  > manufacturers, including DEC, Data General, HP, Prime,
                  > ...[/color]

                  Oops! It seems I'm too young to make such authoritative statements, my
                  adventure with computers started in mid-80's. So, please, take my
                  apologies for inconvenience.

                  --
                  Jarek Zgoda
                  Unregistered Linux User #-1
                  http://www.zgoda.biz/ JID:zgoda-a-chrome.pl http://zgoda.jogger.pl/

                  Comment

                  • Steve Williams

                    #24
                    Re: [OT] AS/400

                    дамјан г. wrote:[color=blue][color=green]
                    >>(will not mention that it works on AS/400, the best
                    >>minicomputer( !) ever made).[/color]
                    >
                    >
                    > Why is it the best minicomputer ever made?
                    > I really want to know!
                    >
                    >[/color]
                    HP/3000, taken off the sales list last Halloween.

                    A joy to work with.

                    Believe it or not, it was ported to run as a UNIX emulator in the '80s,
                    so it could be available forever, but HP's politics killed it.

                    Gresham's law applied to computing: bad software drives out good.
                    (Perl vs Python, et cetera, et cetera).





                    Comment

                    • Frank Bechmann

                      #25
                      Re: [OT] AS/400

                      OS-wise an incredible innovative and visionary machine,
                      programming-wise you had .NET (read as: multi-language
                      runtime-environment) since more than a decade. unequaled productivity
                      for business application development with the usual triple
                      dialog-processing - business logic - database.

                      if only it had more cool ILE-languages than RPG, CL, Cobol and a
                      poorly supported C/C++.

                      btw.: there is even a python port for the AS/400, but even if CL as
                      ugly as a nightmare it can't be beaten in terms of productivity on an
                      AS/400.

                      Comment

                      • Jarek Zgoda

                        #26
                        Re: [OT] AS/400

                        Frank Bechmann <fBechmann@web. de> pisze:
                        [color=blue]
                        > btw.: there is even a python port for the AS/400, but even if CL as
                        > ugly as a nightmare it can't be beaten in terms of productivity on an
                        > AS/400.[/color]

                        Yes, htpp://www.iseriespyth on.com/. Discovery of existence of Python for
                        iSeries made me switch back to AS/400 from Unix.

                        --
                        Jarek Zgoda
                        Unregistered Linux User #-1
                        http://www.zgoda.biz/ JID:zgoda-a-chrome.pl http://zgoda.jogger.pl/

                        Comment

                        Working...