8.6 KiB
| id | title | sidebar_label |
|---|---|---|
| qpainter | QPainter | QPainter |
Lets you paint on widgets.
This class is a JS wrapper around Qt's QPainter class
Note: QPainter works only inside the paint event.
Example
import { FlexLayout, WidgetEventTypes, QMainWindow, QPainter, QWidget } from '@nodegui/nodegui';
const win = new QMainWindow();
const center = new QWidget();
const layout = new FlexLayout();
center.setLayout(layout);
win.resize(200, 200);
win.addEventListener(WidgetEventTypes.Paint, () => {
const painter = new QPainter(win);
painter.drawText(20, 20, 'Hello');
painter.end();
});
win.show();
(global as any).win = win;
Advanced example:
https://github.com/nodegui/examples/blob/master/nodegui/custom-native-widget-qpainter
Hierarchy
-
↳ QPainter
Index
Constructors
Properties
Methods
- begin
- beginNativePainting
- drawArc
- drawConvexPolygon
- drawEllipse
- drawImage
- drawLine
- drawPath
- drawPie
- drawText
- end
- endNativePainting
- fillRect
- restore
- rotate
- save
- scale
- setBrush
- setFont
- setNodeParent
- setPen
- setRenderHint
- setTransform
- strokePath
- translate
Constructors
constructor
+ new QPainter(): QPainter
Overrides Component.constructor
Returns: QPainter
+ new QPainter(device: Component): QPainter
Overrides Component.constructor
Parameters:
| Name | Type |
|---|---|
device |
Component |
Returns: QPainter
Properties
native
• native: NativeElement
nodeChildren
• nodeChildren: Set‹Component›
Inherited from Component.nodeChildren
Optional nodeParent
• nodeParent? : Component
Inherited from Component.nodeParent
Methods
begin
▸ begin(device: QWidget | QImage): boolean
Parameters:
| Name | Type |
|---|---|
device |
QWidget | QImage |
Returns: boolean
beginNativePainting
▸ beginNativePainting(): void
Returns: void
drawArc
▸ drawArc(x: number, y: number, width: number, height: number, startAngle: number, spanAngle: number): void
Parameters:
| Name | Type |
|---|---|
x |
number |
y |
number |
width |
number |
height |
number |
startAngle |
number |
spanAngle |
number |
Returns: void
drawConvexPolygon
▸ drawConvexPolygon(points: QPoint[]): void
Parameters:
| Name | Type |
|---|---|
points |
QPoint[] |
Returns: void
drawEllipse
▸ drawEllipse(x: number, y: number, width: number, height: number): void
Parameters:
| Name | Type |
|---|---|
x |
number |
y |
number |
width |
number |
height |
number |
Returns: void
drawImage
▸ drawImage(x: number, y: number, image: QImage, sx: number, sy: number, sw: number, sh: number): void
Parameters:
| Name | Type | Default |
|---|---|---|
x |
number | - |
y |
number | - |
image |
QImage | - |
sx |
number | 0 |
sy |
number | 0 |
sw |
number | -1 |
sh |
number | -1 |
Returns: void
drawLine
▸ drawLine(x1: number, y1: number, x2: number, y2: number): void
Parameters:
| Name | Type |
|---|---|
x1 |
number |
y1 |
number |
x2 |
number |
y2 |
number |
Returns: void
drawPath
▸ drawPath(path: QPainterPath): void
Parameters:
| Name | Type |
|---|---|
path |
QPainterPath |
Returns: void
drawPie
▸ drawPie(x: number, y: number, width: number, height: number, startAngle: number, sweepLength: number): void
Parameters:
| Name | Type |
|---|---|
x |
number |
y |
number |
width |
number |
height |
number |
startAngle |
number |
sweepLength |
number |
Returns: void
drawText
▸ drawText(x: number, y: number, text: string): void
Parameters:
| Name | Type |
|---|---|
x |
number |
y |
number |
text |
string |
Returns: void
end
▸ end(): boolean
Returns: boolean
endNativePainting
▸ endNativePainting(): void
Returns: void
fillRect
▸ fillRect(x: number, y: number, width: number, height: number, color: QColor): void
Parameters:
| Name | Type |
|---|---|
x |
number |
y |
number |
width |
number |
height |
number |
color |
QColor |
Returns: void
restore
▸ restore(): void
Returns: void
rotate
▸ rotate(angle: number): void
Parameters:
| Name | Type |
|---|---|
angle |
number |
Returns: void
save
▸ save(): void
Returns: void
scale
▸ scale(sx: number, sy: number): void
Parameters:
| Name | Type |
|---|---|
sx |
number |
sy |
number |
Returns: void
setBrush
▸ setBrush(color: QColor): void
Parameters:
| Name | Type |
|---|---|
color |
QColor |
Returns: void
setFont
▸ setFont(font: QFont): void
Parameters:
| Name | Type |
|---|---|
font |
QFont |
Returns: void
setNodeParent
▸ setNodeParent(parent?: Component): void
Inherited from Component.setNodeParent
Parameters:
| Name | Type |
|---|---|
parent? |
Component |
Returns: void
setPen
▸ setPen(arg: PenStyle | QColor | QPen): void
Parameters:
| Name | Type |
|---|---|
arg |
PenStyle | QColor | QPen |
Returns: void
setRenderHint
▸ setRenderHint(hint: RenderHint, on: boolean): void
Parameters:
| Name | Type | Default |
|---|---|---|
hint |
RenderHint | - |
on |
boolean | true |
Returns: void
setTransform
▸ setTransform(matrix2x3: number[] | Float32Array, combine: boolean): void
Sets the world transformation matrix.
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
matrix2x3 |
number[] | Float32Array | - | An array of length 6 representing a 2x3 transformation matrix. The order of elements corresponds to the convention used in QTransform, i.e. m11, m12, m21, m22, dx, and dy. |
combine |
boolean | false | If set then this transform will be combining with the curent one. Otherwise it replaces it completely. |
Returns: void
strokePath
▸ strokePath(path: QPainterPath, pen: QPen): void
Parameters:
| Name | Type |
|---|---|
path |
QPainterPath |
pen |
QPen |
Returns: void
translate
▸ translate(dx: number, dy: number): void
Parameters:
| Name | Type |
|---|---|
dx |
number |
dy |
number |
Returns: void