| Rapid-Q Documentation by William Yu (c)1999-2000 | Appendix A: QCANVAS |
|
|
| Field | Type | R/W | Default | Support |
|
|
|
|
|
| Align | INTEGER | RW | alNone | W |
| Align determines how the control aligns within its parent control. | ||||
| ClientHeight | INTEGER | RW | W | |
| ClientWidth | INTEGER | RW | W | |
| Color | INTEGER | RW | WXG | |
| CopyMode | INTEGER | RW | cmBlackness | W |
| Cursor | INTEGER | RW | crDefault | W |
| Enabled | INTEGER | RW | True | WXG |
| Font | QFONT | W | W | |
| Height | INTEGER | RW | WXG | |
| Hint | STRING | RW | W | |
| Left | INTEGER | RW | 0 | WXG |
| Parent | QFORM/QPANEL/QTABCONTROL | W | WXG | |
| Pixel | 2D ARRAY of INTEGER | RW | WXG | |
| PopupMenu | QPOPUPMENU | W | W | |
| ShowHint | INTEGER | RW | False | W |
| Tag | INTEGER | RW | WXG | |
| Top | INTEGER | RW | 0 | WXG |
| Width | INTEGER | RW | WXG | |
| Visible | INTEGER | RW | True | WXG |
| Method | Type | Description | Params | Support |
|
|
|
|
|
| Circle | SUB (x1%, y1%, x2%, y2%, c%, fill%) | Draw & Fill Circle | 6 | WXG |
| CopyRect | SUB (D, Image, S) | D and S are QRECTs, Image can be a QImage, QCanvas, or QBitmap | 3 | W |
Example (copies QIMAGE to canvas at 10,10):DIM Destination AS QRECT | ||||
| Draw | SUB (x%, y%, BMP) | Draw Bitmap on Canvas | 3 | WG |
| Details: BMP can be any BMP property from QBitmap, QImage, QImageList, etc. any component with a BMP property is fine. Examples: DIM Image1 AS QIMAGE | ||||
| FillRect | SUB (x1%, y1%, x2%, y2%, c%) | Draws & Fills a rectangle | 5 | WXG |
| Line | SUB (x1%, y1%, x2%, y2%, c%) | Draws a line | 5 | WXG |
| Paint | SUB (x%, y%, c%, borderc%) | Fill Region | 4 | WXG |
| Pset | SUB (x%, y%, c%) | Pixel plot | 3 | WXG |
| Rectangle | SUB (x1%, y1%, x2%, y2%, c%) | Draws a rectangle | 5 | WXG |
| Repaint | SUB | Force repainting | 0 | W |
| Rotate | SUB (xOrigin%, yOrigin%, Angle%) | Rotates entire canvas at specified origin | 3 | W |
| RoundRect | SUB (x1%, y1%, x2%, y2%, x3%, y3%, c%) | Draws & Fills a rounded rectangle | 7 | W |
| StretchDraw | SUB (Rect AS QRECT, BMP) | Draw image and stretch to fit inside Rect | 2 | W |
| TextHeight | FUNCTION (Text$) AS WORD | Returns the height, in pixels, of Text$ string | 1 | W |
| TextWidth | FUNCTION (Text$) AS WORD | Returns the width, in pixels, of Text$ string | 1 | W |
| TextRect | SUB (Rect AS QRECT, x%, y%, S$, fc%, bc%) | Write text, and clip within region Rect | 6 | W |
| TextOut | SUB (x%, y%, S$, fc%, bc%) | Writes text to image | 5 | WXG |
| Event | Type | Occurs when... | Params | Support |
|
|
|
|
|
| OnClick | VOID | User clicked on canvas | 0 | WXG |
| OnDblClick | VOID | User double clicked on canvas | 0 | W |
| OnMouseDown | SUB (Button%, X%, Y%, Shift%) | Mouse button held down | 4 | WXG |
| OnMouseMove | SUB (X%, Y%, Shift%) | Mouse moves | 3 | WXG |
| OnMouseUp | SUB (Button%, X%, Y%, Shift%) | Mouse button is released | 4 | WXG |
| OnPaint | VOID | Receives WM_PAINT message | 0 | WXG |
' Pixel by pixel credit scroller for Rapid-Q by William Yu
DIM Canvas AS QCanvas
DIM Form AS QForm
DIM Timer1 AS QTimer
DIM Font AS QFont
DIM Y AS INTEGER
Y = -20
SUB Resize
Canvas.Height = Form.ClientHeight
Canvas.Width = Form.ClientWidth
END SUB
SUB Paint
Canvas.Textout (65,Y-30,"Beware the power of Rapid-Q!", &H00FF00, 0)
Canvas.Textout (30,Y,"Credit Scroller written in Rapid-Q by William Yu", &HFFFFFF, 0)
END SUB
SUB TimerOver
Timer1.Interval = 1 '' Can't go any lower!
Y = Y + 1 '' Pixel by pixel!
Paint
END SUB
Form.Width = 400
Form.Height = 200
Form.Center
Form.Color = 0
Font.Name = "Arial"
Font.Size = 12
Font.Color = &H00FF00
Canvas.Parent = Form
Canvas.Font = Font
Canvas.Color = 0
Canvas.OnPaint = Paint
Timer1.Interval = 1
Timer1.OnTimer = TimerOver
Form.Onresize = Resize
Form.ShowModal
![]()
| Prev Component | Contents | Next Component |