Class: QgsMapTip

class qgis.gui.QgsMapTip

Bases: PyQt5.QtWidgets.QWidget

A maptip is a class to display a tip on a map canvas when a mouse is hovered over a feature.

Since QGIS 2.16 a maptip can show full html. QgsMapTip is a QgsWebView, so you can load full HTML/JS/CSS in it.

The code found in the map tips tab is inserted in a inline-block div so the frame can be resized based on the content size.

If no element in the html has a width attribute, the frame will squeeze down to the widest word. To avoid this you can wrap your HTML in a div style=”width:300px” or similar.

JS can be included using the script tag as usual, while CSS files must be linked using link rel=”stylesheet” href=”URL.css” the html specs discourages link rel=”stylesheet” in the body, but all browsers allow it. see https://jakearchibald.com/2016/link-in-body

QgsMapTip() Default constructor

Methods

actionEvent

changeEvent

childEvent

clear

Clear the current maptip if it exists

closeEvent

connectNotify

contextMenuEvent

create

customEvent

destroy

disconnectNotify

dragEnterEvent

dragLeaveEvent

dragMoveEvent

dropEvent

enterEvent

event

focusInEvent

focusNextChild

focusNextPrevChild

focusOutEvent

focusPreviousChild

hideEvent

initPainter

inputMethodEvent

isSignalConnected

keyPressEvent

keyReleaseEvent

leaveEvent

metric

mouseDoubleClickEvent

mouseMoveEvent

mousePressEvent

mouseReleaseEvent

moveEvent

nativeEvent

paintEvent

rasterMapTipPreviewText

Returns the html that would be displayed in a maptip for a given layer.

receivers

resizeEvent

sender

senderSignalIndex

sharedPainter

showEvent

showMapTip

Show a maptip at a given point on the map canvas

tabletEvent

timerEvent

updateMicroFocus

vectorMapTipPreviewText

Returns the html that would be displayed in a maptip for a given layer.

wheelEvent

actionEvent(self, QActionEvent)
changeEvent(self, QEvent)
childEvent(self, QChildEvent)
clear(self, mpMapCanvas: QgsMapCanvas = None, msDelay: int = 0)

Clear the current maptip if it exists

Parameters:
  • mpMapCanvas (QgsMapCanvas = None) – the canvas from which the tip should be cleared.

  • msDelay (int = 0) – optional time in ms to defer clearing the maptip (since QGIS 3.26)

closeEvent(self, QCloseEvent)
connectNotify(self, QMetaMethod)
contextMenuEvent(self, QContextMenuEvent)
create(self, window: PyQt5.sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)
customEvent(self, QEvent)
destroy(self, destroyWindow: bool = True, destroySubWindows: bool = True)
disconnectNotify(self, QMetaMethod)
dragEnterEvent(self, QDragEnterEvent)
dragLeaveEvent(self, QDragLeaveEvent)
dragMoveEvent(self, QDragMoveEvent)
dropEvent(self, QDropEvent)
enterEvent(self, QEvent)
event(self, QEvent) bool
focusInEvent(self, QFocusEvent)
focusNextChild(self) bool
focusNextPrevChild(self, bool) bool
focusOutEvent(self, QFocusEvent)
focusPreviousChild(self) bool
hideEvent(self, QHideEvent)
initPainter(self, QPainter)
inputMethodEvent(self, QInputMethodEvent)
isSignalConnected(self, QMetaMethod) bool
keyPressEvent(self, QKeyEvent)
keyReleaseEvent(self, QKeyEvent)
leaveEvent(self, QEvent)
metric(self, QPaintDevice.PaintDeviceMetric) int
mouseDoubleClickEvent(self, QMouseEvent)
mouseMoveEvent(self, QMouseEvent)
mousePressEvent(self, QMouseEvent)
mouseReleaseEvent(self, QMouseEvent)
moveEvent(self, QMoveEvent)
nativeEvent(self, Union[QByteArray, bytes, bytearray], PyQt5.sip.voidptr) Tuple[bool, int]
paintEvent(self, QPaintEvent)
rasterMapTipPreviewText(layer: QgsMapLayer, mapCanvas: QgsMapCanvas, mapTemplate: str) str

Returns the html that would be displayed in a maptip for a given layer. The center pixel of the raster is used to evaluate the expressions.

New in version 3.32.

Parameters:
Return type:

str

receivers(self, PYQT_SIGNAL) int
resizeEvent(self, QResizeEvent)
sender(self) QObject
senderSignalIndex(self) int
sharedPainter(self) QPainter
showEvent(self, QShowEvent)
showMapTip(self, thepLayer: QgsMapLayer, mapPosition: QgsPointXY, pixelPosition: QPoint, mpMapCanvas: QgsMapCanvas)

Show a maptip at a given point on the map canvas

Parameters:
  • thepLayer (QgsMapLayer) – a qgis vector map layer pointer that will be used to provide the attribute data for the map tip.

  • mapPosition (QgsPointXY) – a reference to the position of the cursor in map coordinatess.

  • pixelPosition (QPoint) – a reference to the position of the cursor in pixel coordinates.

  • mpMapCanvas (QgsMapCanvas) – a map canvas on which the tip is drawn

tabletEvent(self, QTabletEvent)
timerEvent(self, QTimerEvent)
updateMicroFocus(self)
vectorMapTipPreviewText(layer: QgsMapLayer, mapCanvas: QgsMapCanvas, mapTemplate: str, displayExpression: str) str

Returns the html that would be displayed in a maptip for a given layer. If the layer has features, the first feature is used to evaluate the expressions.

New in version 3.32.

Parameters:
Return type:

str

wheelEvent(self, QWheelEvent)