Объектно-Ориентированное программирование на РФокс — различия между версиями

Материал из ТХАБ.РФ
Перейти к: навигация, поиск
(Новая страница: «ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В РУССКОМ ФОКСЕ. === Общие сведения о языке пр…»)
 
м
 
(не показано 6 промежуточных версий этого же участника)
Строка 1: Строка 1:
ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В РУССКОМ ФОКСЕ.
+
== Общие сведения о языке программирования Русский Фокс ==
 
 
=== Общие сведения о языке программирования Русский Фокс ===
 
  
 
Русский Фокс - это 1С-подобный полнофункциональный язык объектно-ориентированного программирования. Он предлагает мощные средства для интерактивной работы и создания приложений.   
 
Русский Фокс - это 1С-подобный полнофункциональный язык объектно-ориентированного программирования. Он предлагает мощные средства для интерактивной работы и создания приложений.   
Строка 36: Строка 34:
 
  '|Заголовок="ТекстОбъекта"|Лево=12|Верх=70|Ширина=600|Высота=40|'+;  
 
  '|Заголовок="ТекстОбъекта"|Лево=12|Верх=70|Ширина=600|Высота=40|'+;  
 
  'Источник="Значение"|')
 
  'Источник="Значение"|')
  где  ИмяОб — уникальное имя объекта на данной форме
 
  "Флажок" — Имя класса создаваемого объекта
 
  и последний параметр — это строка с перечислением устанавливаемых свойств объекту.
 
  
    Кроме того, после создания объекта установить свойства можно методом объекта УстановитьСвойства(СписокПараметров)  Например,
+
где  ИмяОб — уникальное имя объекта на данной форме
 +
 
 +
"Флажок" — Имя класса создаваемого объекта и последний параметр — это строка с перечислением устанавливаемых свойств объекту.
 +
 
 +
Кроме того, после создания объекта установить свойства можно методом объекта УстановитьСвойства(СписокПараметров)  Например,
 
   
 
   
 
  Форма.ИмяОбФлажок.УстановитьСвойства('|Заголовок="ТекстОбъекта"|'+; 'Лево=12|Верх=70|Ширина=600|Высота=40|Источник="Значение"|')
 
  Форма.ИмяОбФлажок.УстановитьСвойства('|Заголовок="ТекстОбъекта"|'+; 'Лево=12|Верх=70|Ширина=600|Высота=40|Источник="Значение"|')
Строка 46: Строка 45:
 
==== Свойства  класса «Флажок» ====
 
==== Свойства  класса «Флажок» ====
  
ПрижимТекста – определяет выравнивание текста, ассоциированного с объектом.  
+
'''ПрижимТекста''' – определяет выравнивание текста, ассоциированного с объектом.  
 
 
Синтаксис: Объект.ПрижимТекста[ = ЧислоЗначение]
 
  
ЧислоЗначение - для «Флажок» имеет следующие допустимые значения: 
+
Синтаксис: Объект.ПрижимТекста[ = ЧислоЗначение]
  
0 (по умолчанию) Выравнивание по левому краю.
+
'''ЧислоЗначение'''  - для «Флажок» имеет следующие допустимые значения: 
  
1     Выравнивание по правому краю.
+
* 0 (по умолчанию) Выравнивание по левому краю.
 +
* 1   Выравнивание по правому краю.
  
АвтоРазмер – указывает когда объект автоматически изменяет свои размеры для соответствия его собственному содержанию (размеру строки текста).
+
'''АвтоРазмер''' – указывает когда объект автоматически изменяет свои размеры для соответствия его собственному содержанию (размеру строки текста).
  
 
Синтаксис: Объект.АвтоРазмер[ = ИстинаИлиЛожь]
 
Синтаксис: Объект.АвтоРазмер[ = ИстинаИлиЛожь]
  
ИстинаИлиЛожь – существуют следующие значения
+
'''ИстинаИлиЛожь''' – существуют следующие значения
 
 
ИСТИНА Объект изменяется.
 
  
ЛОЖЬ (по умолчанию) Содержимое объекта урезается, когда оно превышает его размеры. Размеры объекта постоянны.
+
* ИСТИНА Объект изменяется.
 +
* ЛОЖЬ (по умолчанию) Содержимое объекта урезается, когда оно превышает его размеры. Размеры объекта постоянны.
  
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.АвтоРазмер(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.АвтоРазмер(ИСТИНА)  
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.АвтоРазмер(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.АвтоРазмер(ИСТИНА)  
  
ЦветФона – определяет фоновый цвет, используемый для отображения текста и графики в объекте.  Данное свойство доступно как во время разработки так и выполнения.  
+
'''ЦветФона''' – определяет фоновый цвет, используемый для отображения текста и графики в объекте.  Данное свойство доступно как во время разработки так и выполнения.  
  
 
Синтаксис: Объект.ЦветФона[ = ЗначениеЦвета]
 
Синтаксис: Объект.ЦветФона[ = ЗначениеЦвета]
  
ЗначениеЦвета – указывает значение цвета. Например  
+
* ЗначениеЦвета – указывает значение цвета. Например  
 
 
Цвет В формате RGB Величина
 
 
 
белый 255, 255, 255 16777215
 
  
черный 0, 0, 0 0
+
{| class="wikitable"
серый 192, 192, 192 12632256
+
|-
 +
! Цвет !! В формате RGB !! Величина
 +
|-
 +
| белый || 255, 255, 255 || 16777215
 +
|-
 +
| черный || 0, 0, 0 || 0
 +
|-
 +
| серый || 192, 192, 192 || 12632256
 +
|}
  
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.ЦветФона(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.ЦветФона(16777215)  - Установить Белый цвет фона.
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.ЦветФона(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.ЦветФона(16777215)  - Установить Белый цвет фона.
  
Заголовок – определяет текст в объекте.   
+
'''Заголовок''' – определяет текст в объекте.   
  
 
Синтаксис: Объект.Заголовок[ = ТекстЗначение]
 
Синтаксис: Объект.Заголовок[ = ТекстЗначение]
  
ТекстЗначение - определяет текст, отображаемый в объекте.
+
* ТекстЗначение - определяет текст, отображаемый в объекте.
  
Для того чтобы привязать нажатие определенной клавищи с объектом нужно включить символы «\<» в свойстве «Заголовок» сразу за этой клавишей.  
+
Для того чтобы привязать нажатие определенной клавиши с объектом нужно включить символы «\<» в свойстве «Заголовок» сразу за этой клавишей.  
 
Теперь пользователь при нажатии этой клавиши и  ALT переходит к заданному объекту.  
 
Теперь пользователь при нажатии этой клавиши и  ALT переходит к заданному объекту.  
  
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.Заголовок(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Заголовок(«ТекстЗаголовка»)  - Установить заголовок = «ТекстЗаголовка».
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.Заголовок(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Заголовок(«ТекстЗаголовка»)  - Установить заголовок = «ТекстЗаголовка».
  
Комментарий – хранит информацию об объекте. В отличие от других свойств, оно не используется РФоксом и хранит описание объекта или другую информацию нужную пользователю.  
+
'''Комментарий''' – хранит информацию об объекте. В отличие от других свойств, оно не используется РФоксом и хранит описание объекта или другую информацию нужную пользователю.  
  
 
Синтаксис:          Объект.Комментарий[ = ТекстЗначение]
 
Синтаксис:          Объект.Комментарий[ = ТекстЗначение]
  
ТекстЗначение  - содержит текстовую строку
+
* ТекстЗначение  - содержит текстовую строку
  
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.Комментарий(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Комментарий(«ТекстКомментария»)  - Установить текст комментария.
 
Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.Комментарий(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Комментарий(«ТекстКомментария»)  - Установить текст комментария.
  
Источник – определяет источник данных, связанных с объектом.  
+
'''Источник''' – определяет источник данных, связанных с объектом.  
  
 
Синтаксис:          Объект.Источник[ = «ИмяПоля»]
 
Синтаксис:          Объект.Источник[ = «ИмяПоля»]
  
ИмяПоля – переменная или поле.
+
* ИмяПоля – переменная или поле.
  
 
Текущее значение данного свойства можно получить функцией Значение = Объект.Источник(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Источник(«ИмяПоля»)  - Установить указатель на имя поля, где хранится значение.
 
Текущее значение данного свойства можно получить функцией Значение = Объект.Источник(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Источник(«ИмяПоля»)  - Установить указатель на имя поля, где хранится значение.
  
НеАктивныйЦветФона - определяет цвет фона для выключенного объекта.  
+
'''НеАктивныйЦветФона''' - определяет цвет фона для выключенного объекта.  
  
 
Синтаксис:          Объект.НеАктивныйЦветФона[ = ЗначениеЦвета]
 
Синтаксис:          Объект.НеАктивныйЦветФона[ = ЗначениеЦвета]
Строка 116: Строка 117:
 
Текущее значение данного свойства можно получить функцией Значение = Объект.НеАктивныйЦветФона(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.НеАктивныйЦветФона(ЗначениеЦвета)  - Установить значение цвета для фона не активного (выключенного) объекта.
 
Текущее значение данного свойства можно получить функцией Значение = Объект.НеАктивныйЦветФона(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.НеАктивныйЦветФона(ЗначениеЦвета)  - Установить значение цвета для фона не активного (выключенного) объекта.
  
НеАктивныйЦветТекста  - определяет цвет текста для выключенного объекта.  
+
'''НеАктивныйЦветТекста''' - определяет цвет текста для выключенного объекта.  
  
 
Синтаксис:          Объект.НеАктивныйЦветТекста[ = ЗначениеЦвета]
 
Синтаксис:          Объект.НеАктивныйЦветТекста[ = ЗначениеЦвета]
Строка 122: Строка 123:
 
Текущее значение данного свойства можно получить функцией Значение = Объект.НеАктивныйЦветТекста(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.НеАктивныйЦветТекста(ЗначениеЦвета)  - Установить значение цвета для текста не активного (выключенного) объекта.
 
Текущее значение данного свойства можно получить функцией Значение = Объект.НеАктивныйЦветТекста(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.НеАктивныйЦветТекста(ЗначениеЦвета)  - Установить значение цвета для текста не активного (выключенного) объекта.
  
РеагируетНаСобытия - указывает когда объект активен, т.е. может реагировать на события. Данное свойство доступно как во время разработки так и выполнения.   
+
'''РеагируетНаСобытия''' - указывает когда объект активен, т.е. может реагировать на события. Данное свойство доступно как во время разработки так и выполнения.   
  
 
Синтаксис: Объект.РеагируетНаСобытия[ = Значение]
 
Синтаксис: Объект.РеагируетНаСобытия[ = Значение]
Строка 128: Строка 129:
 
Значение  - имеет следующие допустимые значения:  
 
Значение  - имеет следующие допустимые значения:  
  
ИСТИНА - (по умолчанию) объект реагирует на события.
+
* ИСТИНА - (по умолчанию) объект реагирует на события.
 
+
* ЛОЖЬ  - объект не реагирует на события.
ЛОЖЬ  - объект не реагирует на события.
 
  
[[Категория:РусФокс]]
+
[[Категория:РФокс]]

Текущая версия на 16:13, 7 декабря 2020

Общие сведения о языке программирования Русский Фокс

Русский Фокс - это 1С-подобный полнофункциональный язык объектно-ориентированного программирования. Он предлагает мощные средства для интерактивной работы и создания приложений.

Основу объектно-ориентированного программирования составляют классы. Класс содержит свойства, методы и обрабатываемые им события. Объект является экземпляром класса, который наследует характеристики класса.

На основе существующих классов пользователь может создавать свои собственные классы с нужными ему свойствами и методами, причем свойства и методы также могут быть совершенно отличными от уже существующих.

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

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

События - это реакция объекта, на некоторое действие пользователя или какое-либо другой внутренний процесс. Иногда, при желании программиста и соответствующем программировании, события могут вызываться искусственно, даже когда необходимое для их появления действие не произошло.

Метод - это определенное действие объекта, т.е. функция, с помощью которой программист может выполнить над классом и его содержимым нужные действия.

У многих классов существуют одинаковые свойства, методы и события, иногда с незначительными отличиями в своем действии. Необходимо отметить такую характеристику объекта как фокус, который, при его наличии для объекта, свидетельствует что данный объект является текущим активным объектом, т.е. с ним работает пользователь и все события вызываются именно для данного объекта.

Типы переменных

В Русском Фоксе существует несколько типов переменных, например числовые, символьные, логические, даты и т.д. Также они различаются и по области их применения в программе. Существуют локальные (ЛПЕРЕМ – локальные переменные и массивы переменных, значения которых используются и могут изменяться в пределах процедуры или функции где они были непосредственно объявлены. Доступ к ним из других частей программы невозможен, а после завершения содержащей их процедуры или функции эти переменные и массивы уничтожаются.) и глобальные (ПЕРЕМ - переменные и массивы переменных, значения доступны из любой части программы, функций и т.д.)

Далее будут непосредственно рассматриваться все классы Русского Фокса (РФокса).

КЛАССЫ Рфокса для отображения в форме

Класс «Флажок»

Использование класса “Флажок”

Данный класс является визуальным и не контейнером. В приложениях пользователя он может использоваться для отображения и изменения какого-либо параметра, значение которого имеет два варианта (ИСТИНА или ЛОЖЬ, нуль или единица, да или нет и т.п.) и является подобием объекта CheckBox. Данный объект вставляется в форму методом

Форма.ДобавитьОбъект("ИмяОбФлажок","Флажок",;
'|Заголовок="ТекстОбъекта"|Лево=12|Верх=70|Ширина=600|Высота=40|'+; 
'Источник="Значение"|')

где ИмяОб — уникальное имя объекта на данной форме

"Флажок" — Имя класса создаваемого объекта и последний параметр — это строка с перечислением устанавливаемых свойств объекту.

Кроме того, после создания объекта установить свойства можно методом объекта УстановитьСвойства(СписокПараметров) Например,

Форма.ИмяОбФлажок.УстановитьСвойства('|Заголовок="ТекстОбъекта"|'+; 'Лево=12|Верх=70|Ширина=600|Высота=40|Источник="Значение"|')

Свойства класса «Флажок»

ПрижимТекста – определяет выравнивание текста, ассоциированного с объектом.

Синтаксис: Объект.ПрижимТекста[ = ЧислоЗначение]

ЧислоЗначение - для «Флажок» имеет следующие допустимые значения:

  • 0 (по умолчанию) Выравнивание по левому краю.
  • 1 Выравнивание по правому краю.

АвтоРазмер – указывает когда объект автоматически изменяет свои размеры для соответствия его собственному содержанию (размеру строки текста).

Синтаксис: Объект.АвтоРазмер[ = ИстинаИлиЛожь]

ИстинаИлиЛожь – существуют следующие значения

  • ИСТИНА Объект изменяется.
  • ЛОЖЬ (по умолчанию) Содержимое объекта урезается, когда оно превышает его размеры. Размеры объекта постоянны.

Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.АвтоРазмер(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.АвтоРазмер(ИСТИНА)

ЦветФона – определяет фоновый цвет, используемый для отображения текста и графики в объекте. Данное свойство доступно как во время разработки так и выполнения.

Синтаксис: Объект.ЦветФона[ = ЗначениеЦвета]

  • ЗначениеЦвета – указывает значение цвета. Например
Цвет В формате RGB Величина
белый 255, 255, 255 16777215
черный 0, 0, 0 0
серый 192, 192, 192 12632256

Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.ЦветФона(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.ЦветФона(16777215) - Установить Белый цвет фона.

Заголовок – определяет текст в объекте.

Синтаксис: Объект.Заголовок[ = ТекстЗначение]

  • ТекстЗначение - определяет текст, отображаемый в объекте.

Для того чтобы привязать нажатие определенной клавиши с объектом нужно включить символы «\<» в свойстве «Заголовок» сразу за этой клавишей. Теперь пользователь при нажатии этой клавиши и ALT переходит к заданному объекту.

Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.Заголовок(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Заголовок(«ТекстЗаголовка») - Установить заголовок = «ТекстЗаголовка».

Комментарий – хранит информацию об объекте. В отличие от других свойств, оно не используется РФоксом и хранит описание объекта или другую информацию нужную пользователю.

Синтаксис: Объект.Комментарий[ = ТекстЗначение]

  • ТекстЗначение - содержит текстовую строку

Текущее значение данного свойства можно получить функцией ТекущееЗначение = Объект.Комментарий(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Комментарий(«ТекстКомментария») - Установить текст комментария.

Источник – определяет источник данных, связанных с объектом.

Синтаксис: Объект.Источник[ = «ИмяПоля»]

  • ИмяПоля – переменная или поле.

Текущее значение данного свойства можно получить функцией Значение = Объект.Источник(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.Источник(«ИмяПоля») - Установить указатель на имя поля, где хранится значение.

НеАктивныйЦветФона - определяет цвет фона для выключенного объекта.

Синтаксис: Объект.НеАктивныйЦветФона[ = ЗначениеЦвета]

Текущее значение данного свойства можно получить функцией Значение = Объект.НеАктивныйЦветФона(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.НеАктивныйЦветФона(ЗначениеЦвета) - Установить значение цвета для фона не активного (выключенного) объекта.

НеАктивныйЦветТекста - определяет цвет текста для выключенного объекта.

Синтаксис: Объект.НеАктивныйЦветТекста[ = ЗначениеЦвета]

Текущее значение данного свойства можно получить функцией Значение = Объект.НеАктивныйЦветТекста(). Этой же функцией можно устанавливать данное значение, если передавать значение в параметре функции Объект.НеАктивныйЦветТекста(ЗначениеЦвета) - Установить значение цвета для текста не активного (выключенного) объекта.

РеагируетНаСобытия - указывает когда объект активен, т.е. может реагировать на события. Данное свойство доступно как во время разработки так и выполнения.

Синтаксис: Объект.РеагируетНаСобытия[ = Значение]

Значение - имеет следующие допустимые значения:

  • ИСТИНА - (по умолчанию) объект реагирует на события.
  • ЛОЖЬ - объект не реагирует на события.