Eneboo - Documentación para desarrolladores
|
The QLabel widget provides a text or image display. Más...
#include <qlabel.h>
Slots públicos | |
virtual void | setText (const QString &) |
virtual void | setPixmap (const QPixmap &) |
virtual void | setPicture (const QPicture &) |
virtual void | setMovie (const QMovie &) |
virtual void | setNum (int) |
virtual void | setNum (double) |
void | clear () |
virtual void | setText (const QString &) |
virtual void | setPixmap (const QPixmap &) |
virtual void | setPicture (const QPicture &) |
virtual void | setMovie (const QMovie &) |
virtual void | setNum (int) |
virtual void | setNum (double) |
void | clear () |
Métodos públicos | |
QLabel (QWidget *parent, const char *name=0, WFlags f=0) | |
QLabel (const QString &text, QWidget *parent, const char *name=0, WFlags f=0) | |
QLabel (QWidget *buddy, const QString &, QWidget *parent, const char *name=0, WFlags f=0) | |
~QLabel () | |
QString | text () const |
QPixmap * | pixmap () const |
QPicture * | picture () const |
QMovie * | movie () const |
TextFormat | textFormat () const |
void | setTextFormat (TextFormat) |
int | alignment () const |
virtual void | setAlignment (int) |
int | indent () const |
void | setIndent (int) |
bool | autoResize () const |
virtual void | setAutoResize (bool) |
bool | hasScaledContents () const |
void | setScaledContents (bool) |
QSize | sizeHint () const |
QSize | minimumSizeHint () const |
virtual void | setBuddy (QWidget *) |
QWidget * | buddy () const |
int | heightForWidth (int) const |
void | setFont (const QFont &f) |
QLabel (QWidget *parent, const char *name=0, WFlags f=0) | |
QLabel (const QString &text, QWidget *parent, const char *name=0, WFlags f=0) | |
QLabel (QWidget *buddy, const QString &, QWidget *parent, const char *name=0, WFlags f=0) | |
~QLabel () | |
QString | text () const |
QPixmap * | pixmap () const |
QPicture * | picture () const |
QMovie * | movie () const |
TextFormat | textFormat () const |
void | setTextFormat (TextFormat) |
int | alignment () const |
virtual void | setAlignment (int) |
int | indent () const |
void | setIndent (int) |
bool | autoResize () const |
virtual void | setAutoResize (bool) |
bool | hasScaledContents () const |
void | setScaledContents (bool) |
QSize | sizeHint () const |
QSize | minimumSizeHint () const |
virtual void | setBuddy (QWidget *) |
QWidget * | buddy () const |
int | heightForWidth (int) const |
void | setFont (const QFont &f) |
Métodos protegidos | |
void | drawContents (QPainter *) |
void | fontChange (const QFont &) |
void | resizeEvent (QResizeEvent *) |
void | drawContents (QPainter *) |
void | fontChange (const QFont &) |
void | resizeEvent (QResizeEvent *) |
Propiedades | |
QString | text |
the label's text | |
TextFormat | textFormat |
the label's text format | |
QPixmap | pixmap |
the label's pixmap | |
bool | scaledContents |
whether the label will scale its contents to fill all available space. | |
Alignment | alignment |
the alignment of the label's contents | |
int | indent |
the label's text indent in pixels | |
Amigas | |
class | QTipLabel |
The QLabel widget provides a text or image display.
QLabel is used for displaying text or an image. No user interaction functionality is provided. The visual appearance of the label can be configured in various ways, and it can be used for specifying a focus accelerator key for another widget.
A QLabel can contain any of the following content types: Content Setting Plain text Pass a QString to setText(). Rich text Pass a QString that contains rich text to setText(). A pixmap Pass a QPixmap to setPixmap(). A movie Pass a QMovie to setMovie(). A number Pass an int or a double to setNum(), which converts the number to plain text. Nothing The same as an empty plain text. This is the default. Set by clear().
When the content is changed using any of these functions, any previous content is cleared.
The look of a QLabel can be tuned in several ways. All the settings of QFrame are available for specifying a widget frame. The positioning of the content within the QLabel widget area can be tuned with setAlignment() and setIndent(). For example, this code sets up a sunken panel with a two-line text in the bottom right corner (both lines being flush with the right side of the label):
QLabel *label = new QLabel( this ); label->setFrameStyle( QFrame::Panel | QFrame::Sunken ); label->setText( "first line\nsecond line" ); label->setAlignment( AlignBottom | AlignRight );
A QLabel is often used as a label for an interactive widget. For this use QLabel provides a useful mechanism for adding an accelerator key (see QAccel) that will set the keyboard focus to the other widget (called the QLabel's "buddy"). For example:
QLineEdit* phoneEdit = new QLineEdit( this, "phoneEdit" ); QLabel* phoneLabel = new QLabel( phoneEdit, "&Phone:", this, "phoneLabel" );
In this example, keyboard focus is transferred to the label's buddy (the QLineEdit) when the user presses Alt+P. You can also use the setBuddy() function to accomplish the same thing.
Constructs an empty label.
The parent, name and widget flag f, arguments are passed to the QFrame constructor.
Constructs a label that displays the text, text.
The parent, name and widget flag f, arguments are passed to the QFrame constructor.
QLabel::QLabel | ( | QWidget * | buddy, |
const QString & | text, | ||
QWidget * | parent, | ||
const char * | name = 0 , |
||
WFlags | f = 0 |
||
) |
Constructs a label that displays the text text. The label has a buddy widget, buddy.
If the text contains an underlined letter (a letter preceded by an ampersand, &), and the text is in plain text format, when the user presses Alt+ the underlined letter, focus is passed to the buddy widget.
The parent, name and widget flag, f, arguments are passed to the QFrame constructor.
QLabel::~QLabel | ( | ) |
Destroys the label.
QLabel::QLabel | ( | QWidget * | buddy, |
const QString & | , | ||
QWidget * | parent, | ||
const char * | name = 0 , |
||
WFlags | f = 0 |
||
) |
QLabel::~QLabel | ( | ) |
int QLabel::alignment | ( | ) | const [inline] |
int QLabel::alignment | ( | ) | const [inline] |
bool QLabel::autoResize | ( | ) | const [inline] |
Returns TRUE if auto-resizing is enabled, or FALSE if auto-resizing is disabled.
Auto-resizing is disabled by default.
bool QLabel::autoResize | ( | ) | const [inline] |
QWidget * QLabel::buddy | ( | ) | const |
Returns this label's buddy, or 0 if no buddy is currently set.
QWidget* QLabel::buddy | ( | ) | const |
void QLabel::clear | ( | void | ) | [slot] |
Clears any label contents. Equivalent to setText( "" ).
void QLabel::clear | ( | ) | [slot] |
void QLabel::drawContents | ( | QPainter * | p | ) | [protected, virtual] |
Draws the label contents using the painter p.
Reimplementado de QFrame.
void QLabel::drawContents | ( | QPainter * | ) | [protected, virtual] |
Virtual function that draws the contents of the frame.
The QPainter is already open when you get it, and you must leave it open. Painter transformations are switched off on entry. If you transform the painter, remember to take the frame into account and reset transformation before returning.
This function is reimplemented by subclasses that draw something inside the frame. It should only draw inside contentsRect(). The default function does nothing.
Reimplementado de QFrame.
void QLabel::fontChange | ( | const QFont & | oldFont | ) | [protected, virtual] |
This virtual function is called from setFont(). oldFont is the previous font; you can get the new font from font().
Reimplement this function if your widget needs to know when its font changes. You will almost certainly need to update the widget using update().
The default implementation updates the widget including its geometry.
Reimplementado de QWidget.
bool QLabel::hasScaledContents | ( | ) | const |
bool QLabel::hasScaledContents | ( | ) | const |
Returns the preferred height for this widget, given the width w. The default implementation returns 0, indicating that the preferred height does not depend on the width.
Reimplementado de QWidget.
int QLabel::indent | ( | ) | const [inline] |
int QLabel::indent | ( | ) | const [inline] |
QMovie* QLabel::movie | ( | ) | const |
QMovie * QLabel::movie | ( | ) | const |
Returns a pointer to the label's movie, or 0 if no movie has been set.
QPicture* QLabel::picture | ( | ) | const [inline] |
QPicture * QLabel::picture | ( | ) | const [inline] |
Returns the label's picture or 0 if the label doesn't have a picture.
QPixmap* QLabel::pixmap | ( | ) | const [inline] |
QPixmap* QLabel::pixmap | ( | ) | const [inline] |
void QLabel::resizeEvent | ( | QResizeEvent * | e | ) | [protected, virtual] |
Reimplementado de QFrame.
void QLabel::resizeEvent | ( | QResizeEvent * | e | ) | [protected, virtual] |
Processes the resize event e.
Adjusts the frame rectangle for the resized widget. The frame rectangle is elastic, and the surrounding area is static.
The resulting frame rectangle may be null or invalid. You can use setMinimumSize() to avoid those possibilities.
Nothing is done if the frame rectangle is a null rectangle already.
Reimplementado de QFrame.
void QLabel::setAlignment | ( | int | alignment | ) | [virtual] |
virtual void QLabel::setAlignment | ( | int | ) | [virtual] |
virtual void QLabel::setAutoResize | ( | bool | ) | [virtual] |
void QLabel::setAutoResize | ( | bool | enable | ) | [virtual] |
Enables auto-resizing if enable is TRUE, or disables it if enable is FALSE.
When auto-resizing is enabled the label will resize itself to fit the contents whenever the contents change. The top-left corner is not moved. This is useful for QLabel widgets that are not managed by a QLayout (e.g., top-level widgets).
Auto-resizing is disabled by default.
void QLabel::setBuddy | ( | QWidget * | buddy | ) | [virtual] |
Sets this label's buddy to buddy.
When the user presses the accelerator key indicated by this label, the keyboard focus is transferred to the label's buddy widget.
The buddy mechanism is only available for QLabels that contain plain text in which one letter is prefixed with an ampersand, &. This letter is set as the accelerator key. The letter is displayed underlined, and the '&' is not displayed (i.e. the ShowPrefix
alignment flag is turned on; see setAlignment()).
In a dialog, you might create two data entry widgets and a label for each, and set up the geometry layout so each label is just to the left of its data entry widget (its "buddy"), for example:
QLineEdit *nameEd = new QLineEdit( this ); QLabel *nameLb = new QLabel( "&Name:", this ); nameLb->setBuddy( nameEd ); QLineEdit *phoneEd = new QLineEdit( this ); QLabel *phoneLb = new QLabel( "&Phone:", this ); phoneLb->setBuddy( phoneEd ); // ( layout setup not shown )
With the code above, the focus jumps to the Name field when the user presses Alt+N, and to the Phone field when the user presses Alt+P.
To unset a previously set buddy, call this function with buddy set to 0.
virtual void QLabel::setBuddy | ( | QWidget * | ) | [virtual] |
void QLabel::setFont | ( | const QFont & | f | ) | [virtual] |
void QLabel::setIndent | ( | int | indent | ) |
void QLabel::setIndent | ( | int | ) |
void QLabel::setMovie | ( | const QMovie & | movie | ) | [virtual, slot] |
Sets the label contents to movie. Any previous content is cleared.
The buddy accelerator, if any, is disabled.
The label resizes itself if auto-resizing is enabled.
virtual void QLabel::setMovie | ( | const QMovie & | ) | [virtual, slot] |
virtual void QLabel::setNum | ( | double | ) | [virtual, slot] |
void QLabel::setNum | ( | int | num | ) | [virtual, slot] |
Sets the label contents to plain text containing the textual representation of integer num. Any previous content is cleared. Does nothing if the integer's string representation is the same as the current contents of the label.
The buddy accelerator, if any, is disabled.
The label resizes itself if auto-resizing is enabled.
void QLabel::setNum | ( | double | num | ) | [virtual, slot] |
Esta es una función miembro sobrecargada que se suministra por conveniencia. Difiere de la anterior función solamente en los argumentos que acepta. Sets the label contents to plain text containing the textual representation of double num. Any previous content is cleared. Does nothing if the double's string representation is the same as the current contents of the label.
The buddy accelerator, if any, is disabled.
The label resizes itself if auto-resizing is enabled.
virtual void QLabel::setNum | ( | int | ) | [virtual, slot] |
virtual void QLabel::setPicture | ( | const QPicture & | ) | [virtual, slot] |
void QLabel::setPicture | ( | const QPicture & | picture | ) | [virtual, slot] |
Sets the label contents to picture. Any previous content is cleared.
The buddy accelerator, if any, is disabled.
void QLabel::setPixmap | ( | const QPixmap & | pixmap | ) | [virtual, slot] |
virtual void QLabel::setPixmap | ( | const QPixmap & | ) | [virtual, slot] |
void QLabel::setScaledContents | ( | bool | ) |
void QLabel::setScaledContents | ( | bool | enable | ) |
void QLabel::setText | ( | const QString & | text | ) | [virtual, slot] |
virtual void QLabel::setText | ( | const QString & | ) | [virtual, slot] |
void QLabel::setTextFormat | ( | TextFormat | ) |
void QLabel::setTextFormat | ( | Qt::TextFormat | format | ) |
QString QLabel::text | ( | ) | const [inline] |
QString QLabel::text | ( | ) | const [inline] |
TextFormat QLabel::textFormat | ( | ) | const |
TextFormat QLabel::textFormat | ( | ) | const |
QTipLabel [friend] |
Alignment QLabel::alignment [read, write] |
the alignment of the label's contents
The alignment is a bitwise OR of Qt::AlignmentFlags
and Qt::TextFlags
values. The ExpandTabs
, SingleLine
and ShowPrefix
flags apply only if the label contains plain text; otherwise they are ignored. The DontClip
flag is always ignored. WordBreak
applies to both rich text and plain text labels. The BreakAnywhere
flag is not supported in QLabel.
If the label has a buddy, the ShowPrefix
flag is forced to TRUE.
The default alignment is {AlignAuto | AlignVCenter | ExpandTabs} if the label doesn't have a buddy and
{AlignAuto | AlignVCenter | ExpandTabs | ShowPrefix} if the label has a buddy. If the label contains rich text, additionally
WordBreak
is turned on.
int QLabel::indent [read, write] |
the label's text indent in pixels
If a label displays text, the indent applies to the left edge if alignment() is AlignLeft
, to the right edge if alignment() is AlignRight
, to the top edge if alignment() is AlignTop
, and to to the bottom edge if alignment() is AlignBottom
.
If indent is negative, or if no indent has been set, the label computes the effective indent as follows: If frameWidth() is 0, the effective indent becomes 0. If frameWidth() is greater than 0, the effective indent becomes half the width of the "x" character of the widget's current font().
QPixmap QLabel::pixmap [read, write] |
the label's pixmap
If no pixmap has been set this will return an invalid pixmap.
Setting the pixmap clears any previous content, and resizes the label if QLabel::autoResize() is TRUE. The buddy accelerator, if any, is disabled.
bool QLabel::scaledContents [read, write] |
whether the label will scale its contents to fill all available space.
When enabled and the label shows a pixmap, it will scale the pixmap to fill the available space.
This property's default is FALSE.
QString QLabel::text [read, write] |
the label's text
If no text has been set this will return an empty string. Setting the text clears any previous content, unless they are the same.
The text will be interpreted either as a plain text or as a rich text, depending on the text format setting; see setTextFormat(). The default setting is AutoText
, i.e. QLabel will try to auto-detect the format of the text set.
If the text is interpreted as a plain text and a buddy has been set, the buddy accelerator key is updated from the new text.
The label resizes itself if auto-resizing is enabled.
Note that Qlabel is well-suited to display small rich text documents, i.e. those small documents that get their document specific settings (font, text color, link color) from the label's palette and font properties. For large documents, use QTextEdit in read-only mode instead. QTextEdit will flicker less on resize and can also provide a scrollbar when necessary.
TextFormat QLabel::textFormat [read, write] |
the label's text format
See the Qt::TextFormat
enum for an explanation of the possible options.
The default format is AutoText
.