Метод Report.Circle (Access)
Метод Circle рисует круг, многоточие или дугу в объекте Report при возникновении события Print .
Синтаксис
expression. Круг (шаг (x, y), радиус, цвет, начало, конец, аспект)
Выражение Переменная, представляющая объект Report .
Параметры
Имя | Тип данных | Описание |
---|---|---|
Шаг | Ключевое слово | Указывает, что центр окружности, многоточия или дуги относительно текущих координат, заданных текущими параметрами свойств CurrentX и CurrentY аргумента Object . |
(x, y) | Одинарное с плавающей точкой | Указывает координаты центральной точки круга, эллипса или дуги. Свойства Scale (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight и ScaleWidth) объекта Report , заданного аргументом Object, определяют используемую единицу измерения. |
Radius | Одинарное с плавающей точкой | Указывает радиус окружности, многоточия или дуги. Свойства Scale (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight и ScaleWidth) объекта Report , заданного аргументом Object, определяют используемую единицу измерения. По умолчанию расстояния измеряются в твипах. |
Color | Long | Указывает цвет RGB (красно-зелено-синий) контура круга. Если этот аргумент опущен, используется значение свойства ForeColor . Для указания цвета можно также использовать функцию RGB или функцию QBColor . |
Start | Одинарное с плавающей точкой | При рисовании частичного круга или эллипса аргумент Start указывает (в радианах) начальную позицию дуги. Значение по умолчанию для аргумента Start равно 0 радианам. Диапазон равен -2 пи радианам до 2 пи радианам. |
End | Одинарное с плавающей точкой | При рисовании частичного круга или эллипса аргумент End указывает (в радианах) конечное положение дуги. Значение по умолчанию для аргумента End — 2 пи радиана. Диапазон равен -2 пи радианам до 2 пи радианам. |
Аспект | Одинарное с плавающей точкой | Указывает пропорции круга. Значение по умолчанию — 1,0, которое дает идеальный (неэллиптический) круг на любом экране. |
Замечания
Используйте этот метод только в процедуре события или макросе, заданном свойствами события для раздела отчета или свойством события OnPage для отчета.
При рисовании частичного круга или многоточия, если аргумент Start отрицательный, метод Circle рисует радиус в положение, заданное аргументом Start , и обрабатывает угол как положительный. Если аргумент End является отрицательным, метод Circle рисует радиус до позиции, указанной аргументом End, и снова обрабатывает угол как положительный. Метод Circle всегда рисует в направлении против часовой стрелки (положительное).
Чтобы заполнить круг, задайте свойства FillColor и FillStyle отчета. Можно заполнить только закрытую фигуру. Закрытые фигуры включают круги, многоточие и срезы кругов, которые представляют собой дуги с линиями радиуса, нарисованными на обоих концах.
Если при рисовании срезов кругового круга необходимо нарисовать радиус до угла 0, чтобы сформировать горизонтальный отрезок линии справа, укажите очень небольшое отрицательное значение для аргумента Start , а не 0. Например, можно указать -.00000001 для аргумента Start .
Аргумент можно опустить в середине синтаксиса, но перед включением следующего аргумента необходимо включить запятую. Если вы опустите конечный аргумент, не используйте запятые после последнего указанного аргумента.
Ширина линии, используемой для рисования круга, многоточия или дуги, зависит от параметра свойства DrawWidth . Способ рисования круга на заднем плане зависит от параметров свойств DrawMode и DrawStyle .
При применении метода Circle свойства CurrentX и CurrentY задаются в центральную точку, указанную аргументами x и y .
Пример
В следующем примере метод Circle используется для рисования круга, а затем создания кругового среза в круге и его цвета в красный цвет.
Чтобы попробовать этот пример в Microsoft Access, создайте новый отчет. Задайте для свойства OnPrint раздела Подробности значение [Процедура события]. Введите следующий код в модуль отчета, а затем переключитесь на предварительный просмотр.
Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
Const conPI = 3.14159265359
Dim sngHCtr As Single, sngVCtr As Single
Dim sngRadius As Single
Dim sngStart As Single, sngEnd As Single
sngHCtr = Me.ScaleWidth / 2 ' Horizontal center.
sngVCtr = Me.ScaleHeight / 2 ' Vertical center.
sngRadius = Me.ScaleHeight / 3 ' Circle radius.
' Draw circle.
Me.Circle(sngHCtr, sngVCtr), sngRadius
sngStart = -0.00000001 ' Start of pie slice.
sngEnd = -2 * conPI / 3 ' End of pie slice.
Me.FillColor = RGB(255,0,0) ' Color pie slice red.
Me.FillStyle = 0 ' Fill pie slice.
' Draw pie slice within circle.
Me.Circle(sngHCtr, sngVCtr), sngRadius, , sngStart, sngEnd
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.