6-rows x 8-cols of buttons -sizers setup
- Posted by vmars Jul 02, 2009
- 1007 views
Greetings:
I am trying to change a vertical box of 6 buttons,
to a 6-rows x 8-cols of buttons. But I am all tangled up. Please help, Thanks!
--[include statements] include wxeud.e without warning --[constants] constant Red = create( wxColour, {#FF,#00,#00} ) --[create the controls] constant main = create( wxFrame, {0, -1, "TXTool", -1, -1, 400, 300} ), panl = create( wxPanel, main ), scrollwin = create( wxScrolledWindow, {panl, new_id(), -1, -1, -1, -1, 0} ), txted = create( wxTextCtrl, {panl, -1, "Enter Text Here"} ), panlbox = create( wxBoxSizer, {wxVERTICAL} ), scrollbox = create( wxBoxSizer, {wxVERTICAL} ), left2right = create( wxBoxSizer, {wxHORIZONTAL} ) --[event handlers and other code] add_window_to_sizer( panlbox, scrollwin, 1, wxGROW, 0 ) add_window_to_sizer( panlbox, txted, 0, wxGROW, 0 ) set_sizer( panl, panlbox ) set_sizer( panl, left2right ) set_sizer( scrollwin, scrollbox ) set_sizer( scrollwin, left2right ) set_scrollbars( scrollwin, 0, 20, 0, 50, 0, 0, 0 ) set_back_color( scrollwin, Red ) -- fill the window with some buttons 6 x 8 buttonMatrix atom tempbtn for i = 1 to 6 do for j = 1 to 8 do tempbtn = create( wxButton, {scrollwin, -1, sprintf("Button %d", i), 0, 0, 90, 60} ) add_window_to_sizer( left2right, tempbtn, 0, wxGROW, 0 ) end for --j add_window_to_sizer( scrollbox, left2right, 0, wxGROW, 0 ) end for --i wxMain( main )