Распечатать страницу

Окна, клавиатура, мышь и цвет в Visual FoxPro

« Назад

В табл. 18.1 – 18.4 приводятся справочные данные о командах и функциях, употребляемых для управления окнами, клавиатурой, мышью и цветом.

Таблица 18.1

Команды и функции для окон

Команда / функция

Описание / примеры

Команды

ACTIVATE SCREEN

Направляет вывод в главное окно VPF

ACTIVATE WINDOW

Отображает и активизирует одно или несколько пользовательских окон или системных окон VFP

&& Открываем калькулятор VFP
activate window Calculator

CLEAR WINDOWS

Удаляет из памяти все пользовательские определения окон

oForm = CreateObject('Form')
? oForm                                          && Напечатает: (Object)
clear windows
? oForm                                          && Напечатает: .NULL.

DEACTIVATE WINDOW

Делает неактивными пользовательские или системные окна VFP, и удаляет их с экрана; в памяти определения окон сохраняются

DEFINE WINDOW

Создает определение окна и задает его атрибуты

DOCK WINDOW

Прикрепляет IDE-окно (IDE – Integrated Development Environment) или панель инструментов к главному окну VFP или другому IDE-окну.
Удаление или соответствующее редактирование файла ресурсов FoxUser.dbf восстанавливает заданные по умолчанию установки для окон

EXTERNAL SCREEN

Предупреждает диспетчер проекта о внешней ссылке (внешнем окне)

&& Окно DataEntr должно существовать как внешнее,
&& определенное в другом файле
&& Опции SCREEN и FORM идентичны
external screen DataEntr
store 'DataEntr' to gcScreenFile
modify screen (gcScreenFile)

HIDE WINDOW

Прячет пользовательское или системное окно VFP

MODIFY WINDOW

Изменяет пользовательское или главное окно VFP

MOVE WINDOW

Перемещает пользовательское, созданное DEFINE WINDOW или системное окно VFP (например Command- или Browse-окно)

RELEASE WINDOWS

Удаляет пользовательское или системное окно VFP из памяти

RESTORE SCREEN

Восстанавливает пользовательское или главное окно VFP, ранее сохраненное в буфере экрана, в переменной или элементе массива

RESTORE WINDOW

Восстанавливает в памяти определения окон и их статусы, ранее сохраненные в файле или memo-поле

SAVE SCREEN

Сохраняет образ главного окна VFP или активного пользовательского окна в буфере экрана, в переменной или элементе массива

SAVE WINDOW

Сохраняет заданное или все определения окон в файле или memo-поле

SCROLL

Прокручивает область главного окна VFP или пользовательского окна вверх, вниз, влево или вправо

SHOW WINDOW

Отображает без активизации одно или несколько пользовательских или системных окон VFP

SIZE WINDOW

Изменяет размер пользовательского или системного окна VFP

size window Command to 20, 100

ZOOM WINDOW

Изменяет размер и положение пользовательского или системного окна VFP, например:

zoom window Output norm

Функции

ADOCKSTATE( )

Заносит в массив вариант прикрепления всех прикрепляемых IDE-окон и панелей инструментов, как системных, так и пользовательских

SCOLS( )

Возвращает число колонок, доступных в главном окне VFP

SROWS( )

Возвращает число строчек, доступных в главном окне VFP

SYSMETRIC( )

Возвращает размер элемента окна операционной системы (Windows); элементы окон и меню VFP, созданные соответственно командами DEFINE WINDOW и DEFINE MENU, имеют те же размеры, что и элементы окна операционной системы

WBORDER( )

Определяет, имеет ли активное или указанное окно рамку

WCHILD( )

Возвращает либо номер дочернего окна или имена дочерних окон в порядке, в котором они появились в родительском окне

WCOLS( )

Возвращает число колонок в активном или указанном окне

WDOCKABLE( )

Возвращает статус прикрепления заданного окна

WEXIST( )

Определяет, существует ли указанное окно

WFONT( )

Возвращает имя, размер и стиль шрифта текущего или указанного окна

WLAST( )

Возвращает имя окна, которое было активным до перехода в текущее окно, или определяет, было ли указанное окно активным до перехода в текущее окно

WLCOL( )

Возвращает координату колонки верхнего левого угла активного или заданного окна

WLROW( )

Возвращает координату строки верхнего левого угла активного или заданного окна

WMAXIMUM( )

Определяет, является ли активное или заданное окно максимизированным

WMINIMUM( )

Определяет, является ли активное или заданное окно минимизированным

WONTOP( )

Определяет, находится ли активное или заданное окно на переднем плане

WOUTPUT( )

Определяет, направляется ли вывод на активное или заданное окно

WPARENT( )

Возвращает имя родительского окна для активного или заданного окна

WROWS( )

Возвращает число строк в активном или указанном окне

WTITLE( )

Возвращает заголовок активного или указанного окна

WVISIBLE( )

Определяет, является ли заданное окно видимым

Пример. Определяется и активизируется пользовательское окно Output. Затем демонстрируются команды HIDE WINDOW, SHOW WINDOW и RELEASE WINDOWS.

define window Output from 2, 1 to 13, 75 title 'Output' close float grow zoom

activate window Output

wait window 'После нажатия любой клавиши окно Output будет спрятано'

hide window Output

wait window 'После нажатия любой клавиши окно Output будет показано'

show window Output

wait window 'Нажмите любую клавишу, чтобы освободить окно Output'

release windows Output

Таблица 18.2

Команды и функции для клавиатуры

Команда / функция

Описание

Команды

CLEAR TYPEAHEAD

Очищает опережающий буфер ввода. Команда полезна, когда нужно предотвратить ввод в поле или отклик на ответ до появления вводимого значения в поле или до появления ответа

KEYBOARD

Помещает указанный символ в буфер клавиатуры

ON ESCAPE

Задает команду, выполняемую при нажатии на ESC

ON KEY LABEL

Задает команду, выполняемую при нажатии на клавишу или комбинацию клавиш, или на кнопку мыши

PLAY MACRO

Выполняет указанный макрос клавиатуры

POP KEY

Восстанавливает из стека ON KEY LABEL-команды

PUSH KEY

Помещает текущие ON KEY LABEL команды в стек

Функции

CAPSLOCK( )

Возвращает статус клавиши CAPS LOCK или устанавливает CAPS LOCK в ON или OFF

CHRSAW( )

Определяет, присутствует ли символ в буфере клавиатуры

INKEY( )

Возвращает целое число, имеющееся в опережающем буфере ввода и соответствующее первому удару мыши или нажатой клавише

INSMODE( )

Возвращает статус клавиши INS или устанавливает INS в ON или OFF

KeyPress

Событие. Происходит, когда пользователь нажимает и освобождает клавишу

LASTKEY( )

Возвращает целое число, соответствующее последней нажатой клавише

NUMLOCK( )

Возвращает статус клавиши NUM LOCK или устанавливает NUM LOCK в ON или OFF

ON( )

Возвращает строку с именем команды, установленной ON ERROR, ON ESCAPE, ON KEY LABEL или ON PAGE

Таблица 18.3

Команда и функции для мыши

Команда / функция

Описание

Команда

MOUSE

Выполняет действие, эквивалентное удару, двойному удару или перемещению мыши или операции перетаскивания; пример см. в разд. 2.5.8

Функции

AMOUSEOBJ( )

Формирует массив, содержащий данные о позиции мыши и объекте, на котором мышь позиционирована

ISMOUSE( )

Возвращает .T., если имеется мышь

MCOL( ) | MROW( )

Возвращает номер колонки | строки, в которой находится указатель мыши, главного окна VFP или заданного пользовательского окна; пример см. в разд. 2.5.8

MWINDOW( )

Возвращает имя окна, в котором находится указатель мыши

_DBLCLICK

Задает временной интервал между двойным и тройным ударами мыши

_INCSEEK

Задает допустимый временной интервал между двумя последовательными нажатиями на клавиши клавиатуры при поиске с уточнением в списке Listbox или ComboBox

Таблица 18.4

Управление цветом

Команда / функция / свойство

Описание / примеры

Команды

CREATE COLOR SET

Создает цветовой набор по текущим установкам цвета

SET COLOR OF SCHEME

Задает цвета цветовой схемы или копирует одну цветовую схему в другую

set color of scheme 1 to , , RGB(0, 0, 255, 0, 255, 0)

SET COLOR SET TO

Загружает ранее созданный цветовой набор

SET PALETTE

Устанавливает, будет ли VFP использовать заданную по умолчанию цветовую палитру

Функции

GETCOLOR( )

Отображает диалог выбора цвета и возвращает значение выбранного цвета

ISCOLOR( )

Определяет, может ли компьютер отображать цвет

RGB( )

Возвращает значение цвета по его RGB-компонентам

RGBSCHEME( )

Возвращает RGB-цветовую пару или список RGB-цветовых пар по заданной цветовой схеме

? RGBScheme(4, 1)
&& Напечатает: RGB(172, 168, 153, 255, 255, 255)

SCHEME( )

Возвращает список цветовых пар или одну цветовую пару для заданной цветовой схемы

? Scheme(4, 3)                                  && Напечатает: N/W*

SYS(2006)

Возвращает тип графической карты и монитора

Свойства

BackColor

Задают цвет фона

BorderColor

Задает цвет границы объекта

FillColor

Задает цвет, используемый для заливки обрамления

FillStyle

Задает тип образца, используемого при заливки объекта, выводимого методами Circle и Box

ForeColor

Задают текущий цвет вывода текста или графических данных