Объявление одномерного массива и задание его начальных значений, при   //этом размер массива автоматически будет равен 4. 13 страница



'Выравнивание по вертикали по верху

Range.VertJustify = com.sun.star.table.CellVertJustify.TOP

'расположение текста по буквам сверху вниз, символы горизонтальные

Range.Orientation = com.sun.star.table.CellOrientation.STACKED

next i

End Sub

 

Данный макрос просто присваивает ячейкам листа данный стиль. Предварительно стиль можно задать Формат-Стиль.

Sub Macro6

Dim Doc,Sheet,Range as Object

Dim n as integer

Doc = StarDesktop.CurrentComponent

n = Doc.Sheets.Count

Dim aLineBorder as new com.sun.star.table.BorderLine

Dim Border as new com.sun.star.table.TableBorder

for i=0 to n-1

Sheet = Doc.Sheets(i)

Range = Sheet.getCellRangeByName("A1:Z100")

'Установка стиля листа New

Range.CellStyle = "New"

next i

End Sub

 

 

Попробуем на кнопке разместить рисунок, для этого откроем свойства объекта и просмотрим все его свойства, найдя Изображение. Выберем графический файл щелкнув на кнопке три точки. Предварительно файл с изображением можно создать в любом графическом редакторе.

 

 

8.7. Изучение флажков.

С помощью элемента управления перенесите на первый лист шесть флажков и расположите их друг за другом. Щелкнув правой кнопкой мыши над элементом флажок посмотрите его свойства, посмотрите как называется объект, если он не называется Флажок 1, Флажок 2 и т.д., назовите его так или учтите это при выполнении дальнейшего задания. Далее создайте Макрос и назовите каким-нибудь образом, в данном случае процедура макроса должна иметь стандартный вид процедуры обработчика события с наличием входного аргумента Event.

 

В OOo Basic Вы можете использовать параметры объекта, чтобы предоставить дополнительную информацию о событии для процедуры, например:

Sub ProcessEvent(Event As Object)

End Sub

Подробность, с которой объект Event структурирован и его свойства, зависит от типа события, которое инициирует вызов процедуры. Независимо от типа события, все объекты обеспечивают доступ к соответствующему элементу управления и его модели. Элемент управления может быть достигнут с использованием

Event.Source

а его используемая модель

Event.Source.Model

Вы можете использовать эти свойства для инициирования события в пределах обработчика события.

 

Запишите код макроса. Затем свяжите данный макрос с реакцией на событие с каждым объектом флажок.

Sub Macro8(Event as Object)

Dim Doc As Object

Dim Sheet As Object

Dim num as integer

Doc = ThisComponent

'Показать имя объекта вызвавшего событие

msgbox Event.Source.Model.Name

'определяем какой именно объект создал событие и нумеруем

if Event.Source.Model.Name = "Флажок 1" then

num = 1

end if

if Event.Source.Model.Name = "Флажок 2" then

num = 2

end if

if Event.Source.Model.Name = "Флажок 3" then

num = 3

end if

if Event.Source.Model.Name = "Флажок 4" then

num = 4

end if

if Event.Source.Model.Name = "Флажок 5" then

num = 5

end if

if Event.Source.Model.Name = "Флажок 6" then

num = 6

end if

'Выбираем первый лист

Sheet = Doc.Sheets(0)

'Выбираем ячейку по ее координатам, первое число — столбец, второе номер строки

Cell = Sheet.getCellByPosition(7, num-1)

'если состояние флажка выделен, то указываем это в ячейке, в ином случае не выделен

if Event.Source.State = 1 then

Cell.String = "Выделен"

else

Cell.String = "Не выделен"

end if

 

End sub

 

Флажки предоставляют следующие свойства:

• State (Short) – состояние флажка (0: нет, 1: да, 2: промежуточное состояние);

• Label (String) – надпись для элемента управления;

• enableTriState (Boolean) – в дополнение к активированному и дезактивированному состояниям, Вы можете также использовать промежуточное состояние.

Модель объекта флажок обеспечивает следующие свойства:

• Model.FontDescriptor (struct) – структура, которая определяет детали шрифта, который используется (в соответствии со структурой com.sun.star.awt.FontDescriptor);

• Model.Label (String) – надпись, которая отображается на элементе управления;

• Model.Printable (Boolean) – элемент управления может быть напечатан;

• Model.State (Short) – состояние флажка (0: нет, 1: да, 2: промежуточное состояние);

• Model.Tabstop (Boolean) – элемент управления может быть достигнут при помощи клавиши Tab;

• Model.TextColor (Long) – цвет текста элемента управления;

• Model.HelpText (String) – текст всплывающей подсказки, которая появляется, когда Вы перемещаете курсор мыши над элементом управления;

• Model.HelpURL (String) – URL страницы онлайн справки для соответствующего элемента управления.

8.8. Изучение Переключателей.

Эти кнопки используются в группах и позволяют Вам выбирать один из нескольких вариантов. Когда Вы выбираете переключатель, все другие переключатели в группе дезактивируются. Это гарантирует, что в любой момент времени установлен только один переключатель.

Элемент управления переключатель предоставляет два свойства:

• State (Boolean) – состояние переключателя;

• Label (String) – надпись, которая отображается рядом с переключателем.

Вы можете также использовать следующие свойства из модели переключателей:

• Model.FontDescriptor (struct) – структура, которая определяет детали шрифта,

который используется (в соответствии со структурой com.sun.star.awt.FontDescriptor);

• Model.Label (String) – надпись, которая отображается на элементе управления;

• Model.Printable (Boolean) – элемент управления может быть напечатан;

• Model.State (Short) – если это свойство равно 1, переключатель активирован, иначе он дезактивирован;

• Model.TextColor (Long) – цвет текста элемента управления;

• Model.HelpText (String) – текст всплывающей подсказки, которая появляется, когда Вы перемещаете курсор мыши над элементом управления;

• Model.HelpURL (String) – URL страницы онлайн справки для соответствующего элемента управления.

 

Для того, чтобы объединить переключатели в одну группу, необходимо выбрать каждый переключатель и в их свойстве Имя Группы, указать одно и то же название группы для всех переключателей.

Добавьте на второй лист три переключателя и установите для них одну и ту же группу.

Добавьте в данных связанную с переключателем ячейку. В этом случае значение в поле Значение индекса (вкл/выкл) будет записано в указанную ячейку в зависимости от того в каком положении переключатель.

 

Затем создайте макрос. И свяжите его с событием Выполнить действие.

 

Sub Macro9(Event as Object)

dim num as integer

Dim Shet, Doc,Cell as Object

'Проверка какой из переключателей сработал

if Event.Source.Model.Name = "Переключатель 1" then

num = 1

end if

if Event.Source.Model.Name = "Переключатель 2" then

num = 2

end if

if Event.Source.Model.Name = "Переключатель 3" then

num = 3

end if

'Обращение ко второму листу

Doc = ThisComponent

Sheet = Doc.Sheets(1)

'Ячейка первой строки восьмого столбца H

Cell = Sheet.getCellByPosition(7, 0)

'Установка значения ячейки номером сработавшего переключателя

Cell.Value = num

'Установка цвета символов ячейки и ее высоты в зависимости от переключателя

select case num

case 1

'цвет

Cell.CharColor = RGB(255, 0, 0)

'высота

Cell.CharHeight = 15

case 2

Cell.CharColor = RGB(0, 255, 0)

Cell.CharHeight = 10

case 3

Cell.CharColor = RGB(0, 0, 255)

Cell.CharHeight = 20

end select

end sub

 

8.9. Текстовые поля

Текстовые поля позволяют пользователям вводить числа и текст. Текстовое поле может содержать одну или более строк и может редактироваться или быть заблокированным для пользовательского ввода. Текстовые поля могут также использоваться как поля ввода специальных денежных и числовых данных, а также как поля экрана для специальных задач. Поскольку эти элементы управления основаны на UNO сервисе UnoControlEdit, их программно-управляемая обработка подобна.

Текстовые поля предоставляют следующие свойства:

• Text (String) – текущий текст;

• SelectedText (String) – выделенный в настоящее время текст;

• Selection (Struct) – подробности выделения только для чтения (структура в соответствии с com.sun.star.awt.Selection, со свойствами Min и Max, определяющими начало и конец текущего выделения);

• MaxTextLen (short) – максимальное количество символов, которые Вы можете ввести в поле;

• Editable (Boolean) – True активизирует возможность ввода текста, False блокирует возможность ввода (свойство нельзя вызвать непосредственно, а только через IsEditable);

• IsEditable (Boolean) – содержимое элемента управления может быть изменено, только для чтения.

Текстовые поля предоставляют следующие методы:

• insertText (Sel, Text ) – вставляет текст, заданный строковой переменной Text, в положение, определяемое структурой Sel;

• getSelectedText – возвращает строку, содержащую выделенный в настоящее время текст;

• setSelection (Selection) – устанавливает пользовательское выделение в соответствии с информацией, содержащейся в структуре Selection;

• setEditable (Editable) – делает текст редактируемым для пользователя или только для чтения в зависимости от логической переменной Editable.

Кроме того, следующие свойства предоставляются через связанный объект модели:

• Model.Align (short) – выравнивание текста (0: выравнивание по левому краю, 1: выравнивание по центру, 2: выравнивание по правому краю);

• Model.BackgroundColor (long) – цвет фона элемента управления;

• Model.Border (short) – тип границы (0: нет границы, 1: трехмерная граница, 2: простая граница);

• Model.EchoChar (short) – код эхо-символа для полей ввода пароля;

• Model.FontDescriptor (struct) – структура с подробностями используемого шрифта (в соответствии со структурой com.sun.star.awt.FontDescriptor);

• Model.HardLineBreaks (Boolean) – автоматические разрывы строки постоянно вставляются в текст элемента управления;

Элементы управления диалогов подробно

• Model.HScroll (Boolean) – текст имеет горизонтальную полосу прокрутки;

• Model.MaxTextLen (Short) – максимальная длина текста, где 0 соответствует отсутствию ограничения длины;

• Model.MultiLine (Boolean) – разрешает ввод в объеме нескольких строк;

• Model.Printable (Boolean) – элемент управления может быть напечатан;

• Model.ReadOnly (Boolean) – содержимое элемента управления только для чтения;

• Model.Tabstop (Boolean) – элемент управления может быть достигнут при помощи клавиши Tab;

• Model.Text (String) – текст связанный с элементом управления;

• Model.TextColor (Long) – цвет текста элемента управления;

• Model.VScroll (Boolean) – текст имеет вертикальную полосу прокрутки;

• Model.HelpText (String) – текст всплывающей подсказки, которая появляется, когда Вы перемещаете курсор мыши над элементом управления;

• Model.HelpURL (String) – URL страницы онлайн справки для соответствующего элемента управления.

 

8.10. Список

Элемент управления список (сервис com.sun.star.awt.UnoControlListBox) отображает список элементов, из которых пользователь может выбрать один или несколько. Если число элементов превышает то количество, которое может быть отображено в поле списка, в элементе управления автоматически появляются полосы прокрутки. Если свойство Dropdown установлено в True, список элементов отображается в раскрывающемся списке. В этом случае, максимальное количество строк в раскрывающемся списке определяется свойством LineCount. Фактическим списком элементов управляет свойство StringItemList. Всеми выбранными свойство пунктами управляет свойство SelectedItems.

Если MultiSelection установлено в True, может быть выбран более чем один элемент.

Списки поддерживают следующие свойства:

• ItemCount (Short) – число элементов, только для чтения;

• SelectedItem (String) – текст выделенного элемента, только для чтения;

• SelectedItems (Array Of Strings) – массив данных с выделенными записями (для списков, которые поддерживают множественный выбор), только для чтения;

• SelectItemPos (Short) – номер элемента, выделенного в настоящее время, только для чтения;

• SelectItemsPos (Array of Short) – массив данных с номерами выделенных записей (для списков, которые поддерживают множественный выбор), только для чтения;

• MultipleMode (Boolean) – True активизирует возможность для множественного выбора записей, False блокирует множественный выбор (свойство нельзя вызвать непосредственно, но только через IsMultipleMode);

• IsMultipleMode (Boolean) – разрешает множественный выбор в пределах списка, только для чтения.

Списки предоставляют следующие методы:

• addItem (Item, Pos) – вводит строку, определенную в Item в список в позиции Pos;

• addItems (ItemArray, Pos) – вводит записи, перечисленные в строковом массиве данных ItemArray в список в позиции Pos;

• selectItem (Item, SelectMode) – активизирует или дезактивирует выделение для элемента, определенного в строке Item в зависимости от логической переменной SelectMode;

• makeVisible (Pos) – прокручивает область списка так, чтобы элемент, определенный параметром Pos был видим.

Объект модели списка предоставляет следующие свойства:

• Model.BackgroundColor (long) – цвет фона элемента управления;

• Model.Border (short) – тип границы (0: нет границы, 1: трехмерная граница, 2: простая граница);

• Model.FontDescriptor (struct) – структура с подробностями используемого шрифта (в соответствии со структурой com.sun.star.awt.FontDescriptor);

• Model.LineCount (Short) – число строк в элементе управления;

• Model.MultiSelection (Boolean) – разрешает множественный выбор записей;

• Model.SelectedItems (Array of Strings) – список выделенных записей;

• Model.StringItemList (Array of Strings) – список всех записей;

• Model.Printable (Boolean) – элемент управления может быть напечатан;

• Model.ReadOnly (Boolean) – содержимое элемента управления только для чтения;

• Model.Tabstop (Boolean) – элемент управления может быть достигнут при помощи клавиши Tab;

• Model.TextColor (Long) – цвет текста элемента управления;

• Model.HelpText (String) – текст всплывающей подсказки, которая появляется, когда Вы перемещаете курсор мыши над элементом управления;

• Model.HelpURL (String) – URL страницы онлайн справки для соответствующего элемента управления.

 

8.11. Поле со списком

Элемент управления поле со списком (сервис com.sun.star.awt.UnoControlComboBox) представляет для пользователя список выбора. Дополнительно, он содержит текстовое поле, позволяя пользователю ввести вариант, который отсутствует в списке. Поле со списком используется, когда имеется только список предложенных выборов, тогда как список используется, когда пользовательский ввод ограничен только списком.

Возможности и свойства поля со списком и списка подобны. Также в поле со списком список элементов может быть показан в раскрывающемся списке, если свойство Dropdown установлено в True. Фактический список элементов доступен через свойство StringItemList.

Текстом, отображаемым в текстовом поле поля со списком управляет свойство Text.

Поля со списком поддерживают следующие свойства:

• ItemCount (Short) – число элементов, только для чтения;

• Text (String) – текущий текст;

• MaxTextLen (short) – максимальное количество символов, которые Вы можете ввести в поле;

Поля со списком предоставляют следующие методы:

• addItem (Item, Pos) – вводит строку, определенную в Item в список в позиции Pos;

• addItems (ItemArray, Pos) – вводит записи, перечисленные в строковом массиве данных ItemArray в список в позиции Pos;

• getDropDownLineCount () –возвращает число видимых линий в выпадающем списке поля со списком;

• getItemCount () – возвращает число элементов в поле со списком;

• getItem (Pos) – возвращает элемент в указанной позиции Pos;

• getItems () – возвращает все элементы поля со списком;

• removeItems (Pos, Count) – удаляет Count элементов в позиции Pos;

• setDropDownLineCount (Lines) – устанавливает число отображаемых линий в

выпадающем списке поля со списком;

Объект модели списка предоставляет следующие свойства:

• Model.Align (short) – определяет горизонтальное выравнивание текста в элементе управления;

• Model.Autocomplete (boolean) определяет, разрешено ли автоматическое завершение текста;

• Model.BackgroundColor (long) – цвет фона элемента управления;

• Model.Border (short) – тип границы (0: нет границы, 1: трехмерная граница, 2: простая граница);

• Model.Dropdown (boolean) – определяет, имеет ли элемент управления кнопку раскрывающегося списка;

• Model.FontDescriptor (struct) – структура с подробностями используемого шрифта (в соответствии со структурой com.sun.star.awt.FontDescriptor);

• Model.HelpText (string) – текст всплывающей подсказки, которая появляется, когда Вы перемещаете курсор мыши над элементом управления;

• Model.HelpURL (string) – URL страницы онлайн справки для соответствующего элемента управления;

• Model.HideInactiveSelection (boolean) – определяет, должен ли вариант выбора в элементе управления быть скрыт, когда элемент управления не активен (не в фокусе);

• Model.LineCount (short) – число строк в элементе управления;

• Model.MaxTextLen (short) – определяет максимальное количество символов;

• Model.StringItemList (Array of Strings) – список всех записей;

• Model.Printable (Boolean) – элемент управления может быть напечатан;

• Model.ReadOnly (Boolean) – содержимое элемента управления только для чтения;

• Model.Tabstop (Boolean) – элемент управления может быть достигнут при помощи клавиши Tab;

• Model.Text (String) – текст связанный с элементом управления;

• Model.TextColor (Long) – цвет текста элемента управления;

 

8.12. Макрос реализующий использование текстового поля и списков

 

Sub Macro10(Event as Object)

Dim Doc,Sheet,oControl, oForm,Docctl,objtext as Object

Dim objsp1,objsp2 as Object

Doc = ThisComponent

'получение контроллера текущего документа, для работы с Control элементами


Дата добавления: 2019-01-14; просмотров: 265; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!