Определяет число градусов для поворота элемента управления в направлении по часовой стрелке. 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 |