Как используется параметр Field в событиях?

  • Автор темы IsAvailable
  • Дата начала
I

IsAvailable

При обработке событий полей на форме (Exiting, Entering, etc.) в качестве параметра передается (Source as Field). Однако в Хэлпе вычитал такую вот вещь:
A Field object has no properties or methods.
Из описания класса Field понял, что он используется для представления УИ-объектов в скриптах.

Вопрос: можно как-нибудь практически использовать этот Field в скрипте?

Сопутствующий вопрос: можно к полю, событие которого обрабатывается скриптом, получить доступ как к NotesItem? То есть как сделать нижеследующее в обработке события:

Dim item as NotesItem
set item = <текущее поле>
 
O

Ogion7

Получить доступ к полю можно хотя бы так

Код:
 Dim work As NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim item As NotesItem
Dim doc As NotesDocument

Set uidoc=work.CurrentDocument
Set doc=uidoc.Document
Set item=doc.GetFirstItem("Поле")



Вопрос: можно как-нибудь практически использовать этот Field в скрипте?

Скорее всего никак
Usage
The Button, Field, and Navigator classes provide entry points to scripts from the Notes UI. So do NotesTimer, NotesUIDatabase, NotesUIDocument, and NotesUIView.
 
F

Fossil Code

Практическая польза в том и состоит, что можно поймать событие входа/выхода (и еще OnBlur ОnChange OnFocus) для поля.

Это из того же хелпа, только в примерах.

This LotusScript event executes when the user exits from the Age field. The script forces the user to enter a numeric value.

Sub Exiting(Source As Field)
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = workspace.CurrentDocument
age = uidoc.FieldGetText("Age")
If age = "" Or Not Isnumeric(age) Then
While age = ""
age = Inputbox _
("Whoa! you must enter an age")
Wend
While Not Isnumeric(age)
age = Inputbox("Age must be numeric")
Wend
Call uidoc.FieldSetText("Age", age)
End If
End Sub
 
I

IsAvailable

Ясно. Спасибо.
Просто думал - вдруг есть какие-нить подводные камни, которые можно было бы использовать :blink:
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!