Many of us like wxpython,so is always fun with a new tool.:)
http://wxformbuilder.org/

Gribouillis commented: Nice info. +3

Recommended Answers

All 8 Replies

I heard that it supports wxPython but I haven't seen that!
I use wxFB version 3.0 and have only C++ features. I love wxFB and Their inheritance philosohpy is really vanilla on cake ;)

Yup!
I missed that!
How do you generate your own classes? Same inheritance principle?

Nice program indeed!
On Windows it was a little cumbersome to get the wxPython support.
I had to go through the following sequence ...

I had to first install
wxFormBuilder_v3.0.57.exe
and then extract
wxAdditions_Plugin_v1.07.zip
into that directory

Then install this over the older version
wxFormBuilder_v3.1.61-beta.exe
(since that one had a few DLLs missing)

Got ...
wxFormBuilder_v3.0.57.exe
from http://wxformbuilder.org/?page_id=27
and
wxAdditions_Plugin_v1.07.zip
wxFormBuilder_v3.1.61-beta.exe
from http://forum.wxformbuilder.org/index.php?topic=623.0

Nice program indeed!

Sure Vega, It saved a lot of programming time in C++ (May be days or even months)

On Windows it was a little cumbersome to get the wxPython support.
I had to go through the following sequence ...

I was about to ask snippsat how he got around the DLL. Thanks for info and the link

If you work with the wxPython option, you can only save the C++ code and an xml file at this point. You have to copy and paste the Python code directly to your Python editor, add a "driver" to the bottom and flesh out the code to your needs.

Here is a typical code example mostly produced by the wxFormBuilder program ...

###########################################################################
## Python code generated with wxFormBuilder (version Jun 11 2009)
## http://www.wxformbuilder.org/
##
## PLEASE DO "NOT" EDIT THIS FILE!
###########################################################################

import wx

###########################################################################
## Class MyFrame2
###########################################################################

class MyFrame2 ( wx.Frame ):
    
    def __init__( self, parent ):
        wx.Frame.__init__  ( self, parent, id = wx.ID_ANY, 
            title = u"T Calculator", pos = wx.DefaultPosition, 
            size = wx.Size( 335,220 ), 
            style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
        
        self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
        self.SetBackgroundColour( wx.Colour( 0, 128, 0 ) )
        
        bSizer4 = wx.BoxSizer( wx.VERTICAL )
        
        
        bSizer4.AddSpacer( ( 0, 0 ) )
        
        self.label1 = wx.StaticText( self, wx.ID_ANY, 
            u"  Enter a temperature value below:  ", 
            wx.DefaultPosition, wx.DefaultSize, 0 )
        self.label1.Wrap( -1 )
        self.label1.SetBackgroundColour( wx.Colour( 255, 255, 128 ) );
        
        bSizer4.Add( self.label1, 0, wx.ALL, 5 )
        
        self.m_textCtrl1 = wx.TextCtrl( self, wx.ID_ANY, 
            wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
        bSizer4.Add( self.m_textCtrl1, 0, wx.ALL, 5 )
        
        self.m_button1 = wx.Button( self, wx.ID_ANY, 
            u"Calculate Temperature", wx.DefaultPosition, 
            wx.DefaultSize, 0 )
        self.m_button1.SetMinSize( wx.Size( 210,-1 ) );
        
        bSizer4.Add( self.m_button1, 0, wx.ALL, 5 )
        
        self.m_textCtrl2 = wx.TextCtrl( self, wx.ID_ANY, 
            wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 
            wx.TE_MULTILINE )
        self.m_textCtrl2.SetMinSize( wx.Size( 310,-1 ) );
        
        bSizer4.Add( self.m_textCtrl2, 0, wx.ALL, 5 )
        
        
        bSizer4.AddSpacer( ( 0, 0 ) )
        
        self.SetSizer( bSizer4 )
        self.Layout()
        
        # Connect Events
        self.m_button1.Bind( wx.EVT_LEFT_DOWN, self.caculate )
    
    def __del__( self ):
        pass
    
    
    # Virtual event handlers, overide them in your derived class
    def caculate( self, event ):

        # calculation and display code added by programmer
        try:
            val = float(self.m_textCtrl1.GetValue())
            sf1 = "%0.1f Celsius is equal to %0.1f Fahrenheit\n"
            s1 = sf1 % (val, 9/5.0 * val + 32)
            sf2 = "%0.1f Fahrenheit is equal to %0.1f Celsius"
            s2 = sf2 % (val, 5/9.0 * (val - 32))            
            self.m_textCtrl2.ChangeValue(s1 + s2)
        except ValueError:
            self.m_textCtrl2.ChangeValue("enter a numeric value")

        event.Skip()
    

# copy and paste the above wxFormBuilder Python code
# modify with needed code
# add this driver
app = wx.App(0)
MyFrame2(None).Show()
app.MainLoop()


Here is a typical code example mostly produced by the wxFormBuilder program

No so dirty ;)

I loved wxformbuilder !!!
Thanks for sharing...

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.