This widget provides a multiline and noneditable object that displays texts, automatically breaking lines and justifying their contents.
Its functionality is very similar to the one provided by the Label widget, except that it can also automatically wrap the text, maintaining a given width or aspect ratio.
Here is the simple syntax to create this widget −
w = Message ( master, option, ... )
master − This represents the parent window.
options − Here is the list of most commonly used options for this widget. These options can be used as key-value pairs separated by commas.
|Sr.No.||Option & Description|
This options controls where the text is positioned if the widget has more space than the text needs. The default is anchor = CENTER, which centers the text in the available space.
The normal background color displayed behind the label and indicator.
Set this option equal to a bitmap or image object and the label will display that graphic.
The size of the border around the indicator. Default is 2 pixels.
If you set this option to a cursor name (arrow, dot etc.), the mouse cursor will change to that pattern when it is over the checkbutton.
If you are displaying text in this label (with the text or textvariable option, the font option specifies in what font that text will be displayed.
If you are displaying text or a bitmap in this label, this option specifies the color of the text. If you are displaying a bitmap, this is the color that will appear at the position of the 1-bits in the bitmap.
The vertical dimension of the new frame.
To display a static image in the label widget, set this option to an image object.
Specifies how multiple lines of text will be aligned with respect to each other: LEFT for flush left, CENTER for centered (the default), or RIGHT for right-justified.
Extra space added to the left and right of the text within the widget. Default is 1.
Extra space added above and below the text within the widget. Default is 1.
Specifies the appearance of a decorative border around the label. The default is FLAT; for other values.
To display one or more lines of text in a label widget, set this option to a string containing the text. Internal newlines ("\n") will force a line break.
To slave the text displayed in a label widget to a control variable of class StringVar, set this option to that variable.
You can display an underline (_) below the nth letter of the text, counting from 0, by setting this option to n. The default is underline = -1, which means no underlining.
Width of the label in characters (not pixels!). If this option is not set, the label will be sized to fit its contents.
You can limit the number of characters in each line by setting this option to the desired number. The default value, 0, means that lines will be broken only at newlines.
Try the following example yourself −
# !/usr/bin/python3 from tkinter import * root = Tk() var = StringVar() label = Message( root, textvariable = var, relief = RAISED ) var.set("Hey!? How are you doing?") label.pack() root.mainloop()
When the above code is executed, it produces the following result −