Метод | Тип | Описание | Параметры |
|
|
|
|
AddSections | SUBI | Add new sections to header | STRING, Infinite |
Clear | SUB | Clears all sections | 0 |
Circle | SUB (x1%, y1%, x2%, y2%, c%, fill%) | Рисует и заливает окружность | 6 |
CopyRect | SUB (D, Image, S) | D и S это QRECTs, Image может быть QImage, QCanvas, или QBitmap | 3 |
Draw | SUB (x%, y%, BMP) | Рисовать BitMap at (X,Y) | 3 |
FillRect | SUB (x1%, y1%, x2%, y2%, c%) | Рисует и заливает цветом прямоугольник | 5 |
Line | SUB (x1%, y1%, x2%, y2%, c%) | Рисует линию | 5 |
Paint | SUB (x%, y%, c%, borderc%) | Заполняет область | 4 |
Pset | SUB (x%, y%, c%) | Рисует точку | 3 |
Rectangle | SUB (x1%, y1%, x2%, y2%, c%) | Рисует прямоугольник | 5 |
Repaint | SUB | Перерисовать of header | 0 |
RoundRect | SUB (x1%, y1%, x2%, y2%, x3%, y3%, c%) | Рисует & Заполняет цветом прямоугольник со скругленными углами | 7 |
StretchDraw | SUB (Rect AS QRECT, BMP) | Рисует BMP и растягивает его до заполнения заданного прямоугольника | 2 |
TextHeight | FUNCTION (Text$) AS WORD | Возвращает высоту, в пикселях, строки Text$ | 1 |
TextWidth | FUNCTION (Text$) AS WORD | Возвращает ширину, в пикселях, строки Text$ | 1 |
TextRect | SUB (Rect AS QRECT, x%, y%, S$, fc%, bc%) | Выводит текст, обрезая по границам региона Rect | 6 |
TextOut | SUB (x%, y%, S$, fc%, bc%) | Выводит текст на рисунок | 5 |
Событие | Тип | Происходит когда... | Параметры |
|
|
|
|
OnDrawSection | SUB (Index%, Pressed%, Rect AS QRECT) | A header section needs to be redisplayed. Header section's Style property must be hsOwnerDraw | 3 |
OnMouseDown | SUB (Button%, X%, Y%, Shift%) | Нажатие кнопки мыши | 4 |
OnMouseMove | SUB (X%, Y%, Shift%) | Движение мыши | 3 |
OnMouseUp | SUB (Button%, X%, Y%, Shift%) | Кнопка мыши отпущена | 4 |
OnResize | VOID | Size of header control changes | 0 |
OnSectionClick | SUB (Index%) | Header section Index% is clicked | 1 |
OnSectionResize | SUB (Index%) | Header section is resized | 1 |
OnSectionTrack | SUB (Index%, Width%, State%) | Header section is dragged | 3 |
QHeader Примеры
$TYPECHECK ON
$INCLUDE "RAPIDQ.INC"
DECLARE SUB DrawSection (Index AS INTEGER, Pressed AS INTEGER, Rect AS QRECT, Sender AS QHEADER)
DECLARE SUB SectionTrack (Index AS INTEGER, Width AS INTEGER, State AS INTEGER, Sender AS QHEADER)
CREATE Form AS QFORM
Caption = "QHeader example"
Center
CREATE Header AS QHEADER
AddSections "1", "2", "3"
Sections(1).AllowClick = FALSE
Sections(0).Style = hsOwnerDraw
Sections(0).Width = 100
Sections(1).Style = hsOwnerDraw
Sections(2).Style = hsOwnerDraw
OnDrawSection = DrawSection
OnSectionTrack = SectionTrack
END CREATE
CREATE ListBox1 AS QLISTBOX
Align = alLeft
Width = 100
AddItems "1. Rapid-Q", "2. Taxes"
END CREATE
CREATE StatusBar AS QSTATUSBAR
SimplePanel = TRUE
SimpleText = "Not moving"
END CREATE
ShowModal
END CREATE
SUB DrawSection (Index AS INTEGER, Pressed AS INTEGER, Rect AS QRECT, Sender AS QHEADER)
Sender.TextOut(Rect.Left+5,Rect.Top+1, STR$(Index+1), &HFF0000, -1)
SELECT CASE Index
CASE 0
Sender.FillRect(Rect.Left+20,Rect.Top+2,Rect.Right-20,Rect.Bottom-2, &H00FF00)
CASE 1
Sender.Circle(Rect.Left+20,Rect.Top+2,Rect.Right-20,Rect.Bottom-2, &HFF, &HFF)
CASE 2
END SELECT
END SUB
SUB SectionTrack (Index AS INTEGER, Width AS INTEGER, State AS INTEGER, Sender AS QHEADER)
StatusBar.SimpleText = "Moving "+STR$(Width)
SELECT CASE Index
CASE 0
ListBox1.Width = Width
END SELECT
END SUB