Tk::Message - Text in Label umbrechen

Tk::Message ist im Prinzip ein Label, also ein Widget zur Darstellung von Text. Allerdings bringt Tk::Message Funktionen zum automatischen Umbrechen des Textes mit. Ein ähnliches Verhalten kann man bei einem Label übrigens auch erreichen, indem man mit der Option -wraplength arbeitet und manuell Zeilenumbrücke mit "\n" setzt.

Wer gleich noch etwas mehr Funktionalität wünscht, wie z.B. die farbliche Hervorhebung von Text im Label, der ist mit Tk::Text oder Tk::ROText besser bedient.

Tk::Message ist nicht mit der Tk::messageBox zu verwechseln, die einen Dialog anzeigt.


Beispiel im Standard

Nachfolgendes Beispiel zeigt, wie Tk::Message standardmäßig Text umbricht.

#!perl

use strict;
use warnings;
use Tk;
use Tk::Message;

my $mw = Tk::MainWindow->new;

my $message_text = q~The Message method creates a new window (given by the $widget argument) and makes it into a message widget. Additional options, described above, may be specified on the command line or in the option database to configure aspects of the message such as its colors, font, text, and initial relief. The message command returns its $widget argument. At the time this command is invoked, there must not exist a window named $widget, but $widget's parent must exist.

A message is a widget that displays a textual string. A message widget has three special features. First, it breaks up its string into lines in order to produce a given aspect ratio for the window. The line breaks are chosen at word boundaries wherever possible (if not even a single word would fit on a line, then the word will be split across lines). Newline characters in the string will force line breaks; they can be used, for example, to leave blank lines in the display.

The second feature of a message widget is justification. The text may be displayed left-justified (each line starts at the left side of the window), centered on a line-by-line basis, or right-justified (each line ends at the right side of the window).

The third feature of a message widget is that it handles control characters and non-printing characters specially. Tab characters are replaced with enough blank space to line up on the next 8-character boundary. Newlines cause line breaks. Other control characters (ASCII code less than 0x20) and characters not defined in the font are displayed as a four-character sequence \xhh where hh is the two-digit hexadecimal number corresponding to the character. In the unusual case where the font doesn't contain all of the characters in ``0123456789abcdef\x'' then control characters and undefined characters are not displayed at all.~;

my $msg = $mw->Message(
	-text => $message_text,
)->pack;

$mw->MainLoop();
exit(0);

Stanard-Optionen von Tk::Message

Beispiel mit Optionen

Nachfolgendes Beispiel zeigt, wie die einige Optionen von Tk::Message funktionieren.

#!perl

use strict;
use warnings;
use Tk;
use Tk::Message;

my $mw = Tk::MainWindow->new;

my $message_text = q~The Message method creates a new window (given by the $widget argument) and makes it into a message widget. Additional options, described above, may be specified on the command line or in the option database to configure aspects of the message such as its colors, font, text, and initial relief. The message command returns its $widget argument. At the time this command is invoked, there must not exist a window named $widget, but $widget's parent must exist.

A message is a widget that displays a textual string. A message widget has three special features. First, it breaks up its string into lines in order to produce a given aspect ratio for the window. The line breaks are chosen at word boundaries wherever possible (if not even a single word would fit on a line, then the word will be split across lines). Newline characters in the string will force line breaks; they can be used, for example, to leave blank lines in the display.

The second feature of a message widget is justification. The text may be displayed left-justified (each line starts at the left side of the window), centered on a line-by-line basis, or right-justified (each line ends at the right side of the window).

The third feature of a message widget is that it handles control characters and non-printing characters specially. Tab characters are replaced with enough blank space to line up on the next 8-character boundary. Newlines cause line breaks. Other control characters (ASCII code less than 0x20) and characters not defined in the font are displayed as a four-character sequence \xhh where hh is the two-digit hexadecimal number corresponding to the character. In the unusual case where the font doesn't contain all of the characters in ``0123456789abcdef\x'' then control characters and undefined characters are not displayed at all.~;

my $msg = $mw->Message(
	# etwas länger als breit
	-aspect => 80,
	-justify => 'right',
	-text => $message_text,
)->pack;

$mw->MainLoop();
exit(0);

Stanard-Optionen von Tk::Message

Top