Определяет число градусов для поворота элемента управления в направлении по часовой стрелке. Read/write как в design time, так и в run time.
Control.Rotation [= nValue] |
Возвращаемое значение
- nValue
-
Определяет вращение элемента управления в диапазоне от 0 до 360 градусов. Значением по умолчанию является 0.
Примечания
Применяется к: Label Control (Visual FoxPro) | Line Control | Shape Control
Четкость изборажения текста может варьироваться в зависимости от используемого шрифта и его размера. Например, маленькие размеры шрифтов смотрятся наилучшим образом при угла поворода в 0-, 90-, или 180-градусов.
Для элементов управления Label, применимы следующие функциональные возможности при установке свойства Rotation:
-
Rotation работает только со шрифтами типа TrueType. Определенные установки шрифта, такие как FontStrikethru могут не отображаться под определенными углами.
-
Rotation не поддерживается, когда свойство Style установлено в 3 (Themed) так как текст метки рисуется темой. Для получения более подробной информации смотрите описание свойства Style.
-
При выравнивании текста в метке, свойство Alignment учитывается только когда свойство Rotation установлено в 0. В противном случае метка центруется при вращении. Для получения более подробной информации смотрите описание свойства Alignment.
-
Свойство WordWrap поддерживается также только в случае установки свойства Rotation в 0. Другими словами, если Rotation установлено взначение отличное от 0, не происходит переноса слов, даже если WordWrap установлено в True (.T.). Для получения более подробной информации смотрите описание свойства WordWrap.
-
Свойство AutoSize не изменяет размеры элемента управления, основанные на установке Rotation. Текст всегда центруется в метке. Поэтому, рекомендуется проверить, достаточно ли велика метка, для размещения в любой позиции вращения. Для получения более подробной информации смотрите описание свойства AutoSize.
-
"Горячие" ключи (\<), указанные в свойстве Caption не отображаются, хотя сохраняют свою функциональность при вращении метки. Для получения более подробной информации смотрите описание свойства Caption (Visual FoxPro).
Для элементов управления Shape и Line применимы следующие функциональные возможности при использовании установок свойства Rotation:
-
Rotation применяется когжа полигонные контуры и линии создаются свойством PolyPoints. Для получения более подробной информации смотрите описание свойства PolyPoints.
-
Элемент управления вращается вокруг своей координаты центра.
Пример
Приведенный ниже пример создает форму и вводит метку и две командных кнопки, основанные на пользовательском классе. Свойство Rotation устанавливается каждый раз, когда вы щелкаете по кнопке "Rotate", в результате чего производится врщение метки.
Приведенные ниже строки кода используют функцию CREATEOBJECT() для создания формы и метод AddObject для ввода в форму элемента управления Label и двух пользовательских командных кнопок. Затем свойство Visible устанавливается в True (.T.) для метки и кнопок с целью их отображения в форме. Для отображения формы используется метод Show, а команда READ EVENTS начинает обработку событий. Команда DEFINE CLASS определяет пользовательские класс Label и класс CommandButton и содержиать установки для соответствующих свойств.
Скопировать код | |
|---|---|
frmMyForm = CREATEOBJECT('Form')
frmMyForm.AddObject('lblLabel1','lblMyLabel')
frmMyForm.AddObject('cmdCmndBtn1','cmdMyCmndBtn1')
frmMyForm.AddObject('cmdCmndBtn2','cmdMyCmndBtn2')
frmMyForm.lblLabel1.Visible = .T.
frmMyForm.cmdCmndBtn1.Visible =.T.
frmMyForm.cmdCmndBtn2.Visible =.T.
frmMyForm.Show
READ EVENTS
DEFINE CLASS lblMyLabel AS Label
Caption = "MyLabel"
Left = 150
Top = 50
Height = 50
Width = 50
ENDDEFINE | |
Приведенное ниже определение класса для командной кнопкит увеличивает значение свойства Rotation в событии Click каждый раз, когда по кнопке производится щелчок мышью. Когда значение свойства Rotation увеличивается, метка поворачивается на указанное число градусов. Когда суммарное число градусов достигнет 360, свойство Rotation сбрасывается в 0, так что метка появляется в ее ориганальной начальной позиции.
Скопировать код | |
|---|---|
DEFINE CLASS cmdMyCmndBtn1 AS CommandButton
Caption = '\<Rotate'
Left = 125
Top = 150
Height = 25
PROCEDURE Click
ThisForm.lblLabel1.Visible = .F.
ThisForm.lblLabel1.Rotation = ThisForm.lblLabel1.Rotation + 45
IF ThisForm.lblLabel1.Rotation = 360
ThisForm.lblLabel1.Rotation = 0
ENDIF
ThisForm.lblLabel1.Visible = .T.
ENDDEFINE | |
Приведенное ниже определение класса для командной кнопки включает в себя команду CLEAR EVENTS в событии Click для остановки обработки событий и закрытия формы.
Скопировать код | |
|---|---|
DEFINE CLASS cmdMyCmndBtn2 AS CommandButton
Caption = '\<Quit'
Cancel = .T.
Left = 125
Top = 200
Height = 25
PROCEDURE Click
CLEAR EVENTS
ENDDEFINE | |