The COLUMNS attribute, FONT attribute, and WIDTH common attribute are interdependent.
If You Set:
Then:
COLUMNS
The value of WIDTH will be automatically adjusted to provide the number of specified COLUMNS based on the value of the FONT attribute.
WIDTH
The value of COLUMNS will be automatically adjusted to provide the specified WIDTH based on the value of the FONT attribute.
FONT
The value of COLUMNS will be automatically adjusted to fit into the size of the widget (WIDTH does not change)
For Constant Widget Size:
If you want to place a widget in a PANEL or otherwise so that it will not grow to encroach on its neighbor widgets, set the value of WIDTH to the desired numbers of pixels. COLUMNS will adjust based on the value of the FONT attribute.
Setting the value of FONT will not change the size of a widget. WIDTH set the exterior dimensions of the widget, whereas COLUMNS affect only the work area dimensions.
Incompatible Attribute Values:
You do not have to worry about setting these values incompatibly, because the attribute you set last in your program will take precedence, as discussed in the table above.
For example, if you set COLUMNS, FONT, and WIDTH in that order in your program, the widget will use your FONT and WIDTH values and will ignore your COLUMNS value. Instead of using your value, the widget will automatically set the COLUMNS attribute value.