QWT API (中文) 7.3.0
Qt绘图库 - 中文API文档
载入中...
搜索中...
未找到
| Public 类型 | Public 成员函数 | Protected 成员函数 | 所有成员列表
QwtPlotLegendItem类 参考

A class which draws a legend inside the plot canvas 更多...

#include <qwt_plot_legenditem.h>

类 QwtPlotLegendItem 继承关系图:
QwtPlotItem

class  PrivateData
 

Public 类型

enum  BackgroundMode { LegendBackground , ItemBackground }
 Background mode 更多...
 
- Public 类型 继承自 QwtPlotItem
enum  RttiValues {
  Rtti_PlotItem = 0 , Rtti_PlotGrid , Rtti_PlotScale , Rtti_PlotLegend ,
  Rtti_PlotMarker , Rtti_PlotCurve , Rtti_PlotSpectroCurve , Rtti_PlotIntervalCurve ,
  Rtti_PlotHistogram , Rtti_PlotSpectrogram , Rtti_PlotGraphic , Rtti_PlotTradingCurve ,
  Rtti_PlotBarChart , Rtti_PlotMultiBarChart , Rtti_PlotShape , Rtti_PlotTextLabel ,
  Rtti_PlotZone , Rtti_PlotVectorField , Rtti_PlotArrowMarker , Rtti_PlotBoxChart ,
  Rtti_PlotUserItem = 1000
}
 Runtime type information 更多...
 
enum  ItemAttribute { Legend = 0x01 , AutoScale = 0x02 , Margins = 0x04 }
 Plot Item Attributes 更多...
 
enum  ItemInterest { ScaleInterest = 0x01 , LegendInterest = 0x02 }
 Plot Item Interests 更多...
 
enum  RenderHint { RenderAntialiased = 0x1 }
 Render hints 更多...
 

Public 成员函数

 QwtPlotLegendItem ()
 Constructor
 
 ~QwtPlotLegendItem () override
 Destructor
 
virtual int rtti () const override
 Get the runtime type information
 
void setAlignmentInCanvas (Qt::Alignment)
 Set the alignment in canvas
 
Qt::Alignment alignmentInCanvas () const
 Get the alignment in canvas
 
void setOffsetInCanvas (Qt::Orientations, int numPixels)
 Set the offset in canvas
 
int offsetInCanvas (Qt::Orientation) const
 Get the offset in canvas
 
void setMaxColumns (uint)
 Set the maximum number of columns
 
uint maxColumns () const
 Get the maximum number of columns
 
void setMargin (int)
 Set the margin
 
int margin () const
 Get the margin
 
void setSpacing (int)
 Set the spacing
 
int spacing () const
 Get the spacing
 
void setItemMargin (int)
 Set the item margin
 
int itemMargin () const
 Get the item margin
 
void setItemSpacing (int)
 Set the item spacing
 
int itemSpacing () const
 Get the item spacing
 
void setFont (const QFont &)
 Set the font
 
QFont font () const
 Get the font
 
void setBorderRadius (double)
 Set the border radius
 
double borderRadius () const
 Get the border radius
 
void setBorderPen (const QPen &)
 Set the border pen
 
QPen borderPen () const
 Get the border pen
 
void setBackgroundBrush (const QBrush &)
 Set the background brush
 
QBrush backgroundBrush () const
 Get the background brush
 
void setBackgroundMode (BackgroundMode)
 Set the background mode
 
BackgroundMode backgroundMode () const
 Get the background mode
 
void setTextPen (const QPen &)
 Set the text pen
 
QPen textPen () const
 Get the text pen
 
virtual void draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const override
 Draw the legend item
 
void clearLegend ()
 Clear the legend
 
virtual void updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &) override
 Update the legend
 
virtual QRect geometry (const QRectF &canvasRect) const
 Get the geometry
 
virtual QSize minimumSize (const QwtLegendData &) const
 Get the minimum size
 
virtual int heightForWidth (const QwtLegendData &, int width) const
 Get the height for width
 
QList< const QwtPlotItem * > plotItems () const
 Get the plot items
 
QList< QRect > legendGeometries (const QwtPlotItem *) const
 Get the legend geometries
 
- Public 成员函数 继承自 QwtPlotItem
 QwtPlotItem ()
 Default constructor
 
 QwtPlotItem (const QString &title)
 Constructor with title as QString
 
 QwtPlotItem (const QwtText &title)
 Constructor with title as QwtText
 
virtual ~QwtPlotItem ()
 Destructor
 
virtual void attach (QwtPlot *plot)
 Attach the item to a plot
 
void detach ()
 Detach the item from the plot
 
QwtPlotplot () const
 Get the plot the item is attached to
 
void setTitle (const QString &title)
 Set the title using a QString
 
void setTitle (const QwtText &title)
 Set the title using a QwtText
 
const QwtTexttitle () const
 Get the title
 
void setItemAttribute (ItemAttribute, bool on=true)
 Set an item attribute
 
bool testItemAttribute (ItemAttribute) const
 Test an item attribute
 
void setItemInterest (ItemInterest, bool on=true)
 Set an item interest
 
bool testItemInterest (ItemInterest) const
 Test an item interest
 
void setRenderHint (RenderHint, bool on=true)
 Set a render hint
 
bool testRenderHint (RenderHint) const
 Test a render hint
 
void setRenderThreadCount (uint numThreads)
 Set the number of render threads
 
uint renderThreadCount () const
 Get the number of render threads
 
void setLegendIconSize (const QSize &)
 Set the legend icon size
 
QSize legendIconSize () const
 Get the legend icon size
 
double z () const
 Get the z-value
 
void setZ (double z)
 Set the z-value
 
void show ()
 Show the item
 
void hide ()
 Hide the item
 
virtual void setVisible (bool)
 Set the visibility
 
bool isVisible () const
 Check if the item is visible
 
void setAxes (QwtAxisId xAxis, QwtAxisId yAxis)
 Set both axes
 
void setXAxis (QwtAxisId)
 Set the x-axis
 
QwtAxisId xAxis () const
 Get the x-axis
 
void setYAxis (QwtAxisId)
 Set the y-axis
 
QwtAxisId yAxis () const
 Get the y-axis
 
virtual void itemChanged ()
 Notify the plot that the item has changed
 
virtual void legendChanged ()
 Notify the item that the legend has changed
 
virtual QRectF boundingRect () const
 Get the bounding rectangle
 
virtual void getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, double &left, double &top, double &right, double &bottom) const
 Get margin hints for the canvas
 
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &)
 Update the item with new scale divisions
 
QRectF scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
 Calculate the scale rectangle
 
QRectF paintRect (const QwtScaleMap &, const QwtScaleMap &) const
 Calculate the paint rectangle
 
virtual QList< QwtLegendDatalegendData () const
 Return legend data
 
virtual QwtGraphic legendIcon (int index, const QSizeF &) const
 Return a legend icon
 

Protected 成员函数

virtual void drawLegendData (QPainter *, const QwtPlotItem *, const QwtLegendData &, const QRectF &) const
 Draw the legend data
 
virtual void drawBackground (QPainter *, const QRectF &rect) const
 Draw the background
 
- Protected 成员函数 继承自 QwtPlotItem
QwtGraphic defaultIcon (const QBrush &, const QSizeF &) const
 Create a default icon
 

详细描述

A class which draws a legend inside the plot canvas

QwtPlotLegendItem can be used to draw a legend inside the plot canvas. It can be used together with a QwtLegend or instead of it to have more space for the plot canvas.

In opposite to QwtLegend the legend item is not interactive. To identify mouse clicks on a legend item an event filter needs to be installed catching mouse events on the plot canvas. The geometries of the legend items are available using legendGeometries().

The legend item is aligned to plot canvas according to its alignment() flags. It might have a background for the complete legend ( usually semi transparent ) or for each legend item.

注解
An external QwtLegend with a transparent background on top the plot canvas might be another option with a similar effect.

成员枚举类型说明

◆ BackgroundMode

Background mode

Depending on the mode the complete legend or each item might have an background.

The default setting is LegendBackground.

参见
setBackgroundMode(), setBackgroundBrush(), drawBackground()
枚举值
LegendBackground 

The legend has a background

ItemBackground 

Each item has a background

构造及析构函数说明

◆ QwtPlotLegendItem()

QwtPlotLegendItem::QwtPlotLegendItem ( )
explicit

Constructor

Creates a legend item with default settings. The legend item is initialized with LegendInterest enabled and a z-value of 100.0.

Destructor

成员函数说明

◆ alignmentInCanvas()

Qt::Alignment QwtPlotLegendItem::alignmentInCanvas ( ) const

Get the alignment in canvas

Get the alignment flags

返回
Alignment flags
参见
setAlignmentInCanvas()

◆ backgroundBrush()

QBrush QwtPlotLegendItem::backgroundBrush ( ) const

Get the background brush

Get the brush used to fill the background

返回
Brush used to fill the background
参见
setBackgroundBrush(), backgroundMode(), drawBackground()

◆ backgroundMode()

QwtPlotLegendItem::BackgroundMode QwtPlotLegendItem::backgroundMode ( ) const

Get the background mode

返回
Background mode
参见
setBackgroundMode(), backgroundBrush(), drawBackground()

◆ borderPen()

QPen QwtPlotLegendItem::borderPen ( ) const

Get the border pen

Get the pen for drawing the border

返回
Pen for drawing the border
参见
setBorderPen(), backgroundBrush()

◆ borderRadius()

double QwtPlotLegendItem::borderRadius ( ) const

Get the border radius

Get the radius of the border

返回
Radius of the border
参见
setBorderRadius(), setBorderPen()

◆ clearLegend()

void QwtPlotLegendItem::clearLegend ( )

Clear the legend

Remove all items from the legend

◆ draw()

void QwtPlotLegendItem::draw ( QPainter *  painter,
const QwtScaleMap xMap,
const QwtScaleMap yMap,
const QRectF &  canvasRect 
) const
overridevirtual

Draw the legend item

Draw the legend

参数
[in]painterPainter
[in]xMapX Scale Map
[in]yMapY Scale Map
[in]canvasRectContents rectangle of the canvas in painter coordinates

实现了 QwtPlotItem.

◆ drawBackground()

void QwtPlotLegendItem::drawBackground ( QPainter *  painter,
const QRectF &  rect 
) const
protectedvirtual

Draw the background

Draw a rounded rect

参数
painterPainter
rectBounding rectangle
参见
setBorderRadius(), setBorderPen(), setBackgroundBrush(), setBackgroundMode()

◆ drawLegendData()

void QwtPlotLegendItem::drawLegendData ( QPainter *  painter,
const QwtPlotItem plotItem,
const QwtLegendData data,
const QRectF &  rect 
) const
protectedvirtual

Draw the legend data

Draw an entry on the legend

参数
painterQt Painter
plotItemPlot item, represented by the entry
dataAttributes of the legend entry
rectBounding rectangle for the entry

◆ font()

QFont QwtPlotLegendItem::font ( ) const

Get the font

Get the font used for drawing the text label

返回
Font used for drawing the text label
参见
setFont()

◆ geometry()

QRect QwtPlotLegendItem::geometry ( const QRectF &  canvasRect) const
virtual

Get the geometry

Calculate the geometry of the legend on the canvas

参数
[in]canvasRectGeometry of the canvas
返回
Geometry of the legend

◆ heightForWidth()

int QwtPlotLegendItem::heightForWidth ( const QwtLegendData data,
int  width 
) const
virtual

Get the height for width

Get the preferred height for a given width

参数
[in]dataAttributes of the legend entry
[in]widthWidth
返回
The preferred height

◆ itemMargin()

int QwtPlotLegendItem::itemMargin ( ) const

Get the item margin

Get the margin around each item

返回
Margin around each item
参见
setItemMargin(), itemSpacing(), margin(), spacing()

◆ itemSpacing()

int QwtPlotLegendItem::itemSpacing ( ) const

Get the item spacing

Get the spacing inside of each item

返回
Spacing inside of each item
参见
setItemSpacing(), itemMargin(), margin(), spacing()

◆ legendGeometries()

QList< QRect > QwtPlotLegendItem::legendGeometries ( const QwtPlotItem plotItem) const

Get the legend geometries

Get geometries of the items of a plot item

参数
[in]plotItemPlot item
返回
Geometries of the items of a plot item
注解
Usually a plot item has only one entry on the legend

◆ margin()

int QwtPlotLegendItem::margin ( ) const

Get the margin

Get the margin around the legend items

返回
Margin around the legend items
参见
setMargin(), spacing(), itemMargin(), itemSpacing()

◆ maxColumns()

uint QwtPlotLegendItem::maxColumns ( ) const

Get the maximum number of columns

返回
Maximum number of columns
参见
setMaxColumns(), QwtDynGridLayout::maxColumns()

◆ minimumSize()

QSize QwtPlotLegendItem::minimumSize ( const QwtLegendData data) const
virtual

Get the minimum size

Get the minimum size hint needed to display an entry

参数
[in]dataAttributes of the legend entry
返回
Minimum size

◆ offsetInCanvas()

int QwtPlotLegendItem::offsetInCanvas ( Qt::Orientation  orientation) const

Get the offset in canvas

Get the distance between the legend and the canvas border

参数
[in]orientationQt::Horizontal is for the left/right, Qt::Vertical for the top/bottom padding.
返回
Distance between the legend and the canvas border
参见
setOffsetInCanvas()

◆ plotItems()

QList< const QwtPlotItem * > QwtPlotLegendItem::plotItems ( ) const

Get the plot items

Get all plot items with an entry on the legend

返回
All plot items with an entry on the legend
注解
A plot item might have more than one entry on the legend

◆ rtti()

int QwtPlotLegendItem::rtti ( ) const
overridevirtual

Get the runtime type information

返回
QwtPlotItem::Rtti_PlotLegend

重载 QwtPlotItem .

◆ setAlignmentInCanvas()

void QwtPlotLegendItem::setAlignmentInCanvas ( Qt::Alignment  alignment)

Set the alignment in canvas

Set the alignment of the legend within the canvas

参数
[in]alignmentAlignment flags (e.g., Qt::AlignRight | Qt::AlignBottom)

Alignment means the position of the legend relative to the geometry of the plot canvas.

注解
To align a legend with many items horizontally, the number of columns needs to be limited.
参见
alignmentInCanvas(), setMaxColumns()

◆ setBackgroundBrush()

void QwtPlotLegendItem::setBackgroundBrush ( const QBrush &  brush)

Set the background brush

参数
[in]brushBrush used to fill the background
参见
backgroundBrush(), setBackgroundMode(), drawBackground()

◆ setBackgroundMode()

void QwtPlotLegendItem::setBackgroundMode ( BackgroundMode  mode)

Set the background mode

参数
[in]modeBackground mode

Depending on the mode the complete legend or each item might have a background. The default setting is LegendBackground.

参见
backgroundMode(), setBackgroundBrush(), drawBackground()

◆ setBorderPen()

void QwtPlotLegendItem::setBorderPen ( const QPen &  pen)

Set the border pen

Set the pen for drawing the border

参数
[in]penBorder pen
参见
borderPen(), setBackgroundBrush()

◆ setBorderRadius()

void QwtPlotLegendItem::setBorderRadius ( double  radius)

Set the border radius

Set the radius for the border

参数
[in]radiusA value <= 0 defines a rectangular border
参见
borderRadius(), setBorderPen()

◆ setFont()

void QwtPlotLegendItem::setFont ( const QFont &  font)

Set the font

Change the font used for drawing the text label

参数
[in]fontLegend font
参见
font()

◆ setItemMargin()

void QwtPlotLegendItem::setItemMargin ( int  margin)

Set the item margin

Set the margin around each item

参数
[in]marginMargin
参见
itemMargin(), setItemSpacing(), setMargin(), setSpacing()

◆ setItemSpacing()

void QwtPlotLegendItem::setItemSpacing ( int  spacing)

Set the item spacing

Set the spacing inside of each item

参数
[in]spacingSpacing
参见
itemSpacing(), setItemMargin(), setMargin(), setSpacing()

◆ setMargin()

void QwtPlotLegendItem::setMargin ( int  margin)

Set the margin

Set the margin around legend items

参数
[in]marginMargin in pixels

The default setting for the margin is 0.

参见
margin(), setSpacing(), setItemMargin(), setItemSpacing

◆ setMaxColumns()

void QwtPlotLegendItem::setMaxColumns ( uint  maxColumns)

Set the maximum number of columns

Limit the number of columns

参数
[in]maxColumnsMaximum number of columns. 0 means unlimited.

When aligning the legend horizontally (Qt::AlignLeft, Qt::AlignRight), the number of columns needs to be limited to avoid the width of the legend growing with an increasing number of entries.

参见
maxColumns(), QwtDynGridLayout::setMaxColumns()

◆ setOffsetInCanvas()

void QwtPlotLegendItem::setOffsetInCanvas ( Qt::Orientations  orientations,
int  numPixels 
)

Set the offset in canvas

Set the distance between the legend and the canvas border

参数
[in]orientationsQt::Horizontal is for the left/right, Qt::Vertical for the top/bottom offset.
[in]numPixelsDistance in pixels

The default setting is 10 pixels.

参见
setMargin()

◆ setSpacing()

void QwtPlotLegendItem::setSpacing ( int  spacing)

Set the spacing

Set the spacing between the legend items

参数
[in]spacingSpacing in pixels
参见
spacing(), setMargin()

◆ setTextPen()

void QwtPlotLegendItem::setTextPen ( const QPen &  pen)

Set the text pen

Set the pen for drawing text labels

参数
[in]penText pen
参见
textPen(), setFont()

◆ spacing()

int QwtPlotLegendItem::spacing ( ) const

Get the spacing

Get the spacing between the legend items

返回
Spacing between the legend items
参见
setSpacing(), margin(), itemSpacing(), itemMargin()

◆ textPen()

QPen QwtPlotLegendItem::textPen ( ) const

Get the text pen

Get the pen for drawing text labels

返回
Pen for drawing text labels
参见
setTextPen(), font()

◆ updateLegend()

void QwtPlotLegendItem::updateLegend ( const QwtPlotItem plotItem,
const QList< QwtLegendData > &  data 
)
overridevirtual

Update the legend

Update the legend items according to modifications of a plot item

参数
[in]plotItemPlot item
[in]dataAttributes of the legend entries

重载 QwtPlotItem .


该类的文档由以下文件生成: