On 26/11/11 12:52, Mic wrote:

Alright! By the way, it seems like some people favour the use of pastebins,
while others don’t, which is the way to go and why?

I've stated my preference, Steven has stated his, so I guess you need to decide for yourself. However the best bet is not to paste long pieces of code at all, but stick to samples. They are easier to read and therefore more likely to get a reply...


Strange, I got that error now when I tried to run it just now. But it
took like 30 seconds for the error to actually
appear. Do you have any idea why this happened?

How are you running the code?
From a command prompt or inside an IDE?

Yes it works perfectly fine now. I wonder, in the last section of the code:
 >button.grid(row=row, column=column)
Could I put columnspan in there?
Like:
Button.grid(row=row, column=column, columnspan=columnspan)

Yes, its an option to grid()

use The Python help system(I'm on 2.7)

>>> help(Tkinter.Button.grid)
yields:

Help on method grid_configure in module Tkinter:

grid_configure(self, cnf={}, **kw) unbound Tkinter.Button method
    Position a widget in the parent widget in a grid. Use as options:
    column=number - use cell identified with given column (starting
                    with 0)
    columnspan=number - this widget will span several columns
    in=master - use master to contain this widget
    in_=master - see 'in' option description
    ipadx=amount - add internal padding in x direction
    ipady=amount - add internal padding in y direction
    padx=amount - add padding in x direction
    pady=amount - add padding in y direction
    row=number - use cell identified with given row (starting with 0)
    rowspan=number - this widget will span several rows
    sticky=NSEW - if cell is larger on which sides will this
                  widget stick to the cell boundary


And then just try it out...

earlier on, would I somehow put them in the list, list_chair?

Yes, its just another value. You could use a default like 0 or -1 where you don't want a span. Then in your code test before calling grid:


for row, col, span, name in chairs_list:
    .....
    if span == 0:
        button.grid(row=row,column=col)
    else:
        button.grid(row=row,column=col,columnspan=span)


Assuming you feel that it is time for do this, how do I implement the
creation of these text files into the code that we discussed earlier?

The easiest way is just to use regular Python data structures in a separate python file. Then you just import that file. So using your chair_list, you would put that in a sepasrate file like:


list_chair = [
#row,   col,    span,   name
(0,     1,      0,      '01'),
(0,     2,      0,      '02'),
(0,     3,      0,      '03'),
(0,     4,      0,      '04'),
(1,     1,      2,      '05'),
(1,     3,      2,      '06')
]

Assume you call it chair_config.py

You can then import the data with

from chair_config import list_chair

And the rest of your code remains the same.

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to