//+------------------------------------------------------------------+
//| УРОК 1 |
//| Peter Konow |
//| |
//+------------------------------------------------------------------+
//---------------------------------
//УРОК 1.
//---------------------------------
//---------------------------------
//СОДЕРЖАНИЕ:
//---------------------------------
1. СОЗДАНИЕ ФОРМЫ ОКНА.
2. ПРАВИЛА СОЗДАНИЯ ГРУПП ЭЛЕМЕНТОВ.
3. ПРАВИЛА СОЗДАНИЯ ЭЛЕМЕНТОВ.
4. ТИПЫ ЭЛЕМЕНТОВ.
//---------------------------------
//--------------------------------------------------------------------------------------------------+
//1. СОЗДАНИЕ ФОРМЫ ОКНА:
//--------------------------------------------------------------------------------------------------+
ПОСЛЕДОВАТЕЛЬНОСТЬ КОММАНД:
1. ОБЪЯВЛЯЕМ НОВОЕ ОКНО: NEW_WINDOW,
2. ИМЕНУЕМ ОКНО: W_NAME, "Window 1",
3. ВЫБИРАЕМ ИКОНКУ ОКНА ИЗ ОКНА ИКОНОК КОНСТРУКТОРА (ВЫЗЫВАЕТСЯ ДАБЛ-КЛИКОМ НА ГРАФИК) И ПРОПИСЫВАЕМ : W_LABEL, "::Images\\some_icon.bmp",
4. УСТАНАВЛИВАЕМ ТИП ОКНА - W_TYPE, SETTINGS, (ИЛИ DINAMIC, MENU, DIALOG).
//--------------------------------------------------------------------------------------------------+
NEW_WINDOW, W_NAME, "Window 1", W_LABEL, "::Images\\some_icon.bmp", W_TYPE, SETTINGS,
//--------------------------------------------------------------------------------------------------+
5. ПОСЛЕ ОБЪЯВЛЕНИЯ ОКНА, ЗАВЕРШАЕМ ЕГО КОММАНДОЙ END_WINDOW,
//--------------------------------------------------------------------------------------------------+
//---------------------------------------------------------------------------------------------------
ОБЪЯВЛЕНИЕ ГРУПП ЭЛЕМЕНТОВ:
//---------------------------------------------------------------------------------------------------
1. ВСЕ ЭЛЕМЕНТЫ СУЩЕСТВУЮТ ТОЛЬКО В СВОИХ ГРУППАХ.
2. ВСЕ ГРУППЫ ОБЪЯВЛЯЮТСЯ КОММАНДОЙ GROUP И ОБЯЗАНЫ ИМЕТЬ ИМЯ. (ЕСЛИ ИМЯ НЕСУЩЕСТВЕННО, СТАВИТЬ А. без кавычек)
GROUP, "Main tabs", или GROUP, A,
3. ВСЕ ГРУППЫ ЗАВЕРШАЮТСЯ КОММАНДОЙ END_GROUP.
4. ПОСЛЕ END_GROUP ПИШЕТСЯ ПОЗИЦИЯ ГРУППЫ И СВОЙСТВА ЭЛЕМЕНТОВ.
5. ГРУППА ОБЯЗАНЫ БЫТЬ ПОЗИЦИОНИРОВАНА. ДЛЯ ЭТОГО ИСПОЛЬЗУЕТСЯ ПРОСТОЙ МЕТОД:
i,(символ группы), AT, (ПОЗИЦИЯ) _Х2 Х, (ТИП ПРИВЯЗКИ) "name", (ИМЯ ОБЪЕКТА ПРИВЯЗКИ) 0 (ПОПРАВКА) И ТОЖЕ САМОЕ ДЛЯ ОСИ Y.
//--------------------------------------------------------------------------------------------------+
i, AT, _X2X, "MF", 5, _Y2Y, "MF",5, ("MF" - ОЗНАЧАЕТ MAIN FRAME ОКНА, 5 - ПОПРАВКА)
//--------------------------------------------------------------------------------------------------+
//--------------------------------------------------------------------------------------------------+
ПРИНЦИПЫ ПОСТРОЕНИЯ ГРУПП:
1. ЖЕЛАТЕЛЬНО, СТРОИТЬ ТАБЛИЧНУЮ РАСКЛАДКУ ЭЛЕМЕНТОВ ВНУТРИ ГРУПП - СТАВИТЬ РАВНОЕ КОЛИЧЕСТВО ЭЛЕМЕНТОВ В РЯДУ, - ОДНАКО, МОГУТ БЫТЬ ИСКЛЮЧЕНИЯ.
2. СТРОКА ОБЪЯВЛЕНИЙ ЭЛЕМЕНТОВ - ЭТО РЯД. (Ряд начинается со знака __,).
3. КАЖДЫЙ ЭЛЕМЕНТ ОБЯЗАН ИМЕТЬ ИМЯ. ЭТО МОЖЕТ БЫТЬ ИМЯ СОБСТВЕННОЕ ИЛИ АБСТРАКТНОЕ A. ИМЯ СОБСТВЕННОЕ СТАВИТСЯ В КАВЫЧКИ.
4. ВНУТРИ СТРОКИ ОБЪЯВЛЯЕНИЯ ЭЛЕМЕНТОВ, МОЖНО ПРОПИСЫВАТЬ УСТАНОВКИ ИХ ИНДИВИДУАЛЬНЫХ СВОЙСТВ.
5. ПРИ УСТАНОВКИ СВОЙСТВ ВНУТРИ СТРОКИ ЭЛЕМЕНТОВ, СВОЙСТВА ПЕРЕЧЕСЛЯЮТСЯ ЧЕРЕЗ ЗНАК _, КОТОРЫЙ ОТСЫЛАЕТ КОНСТРУКТОР К НУЖНОМУ ЭЛЕМЕНТУ.
__, M_ITEM, "M_ITEM 1", N_LABEL,"::Images\\some_icon.bmp", _,N_COLOR,(int)clrWhite,_,NB_COLOR,(int)clrWhite,_,AB_COLOR,(int)clrWhite, _,KC_TEXT,"Cntrl+Shift",
В ИТОГЕ ПОЛУЧАЕТСЯ ЦЕПОЧКА СВОЙСТВ. ЕЕ МОЖНО ПЕРЕНОСИТЬ МЕЖДУ ЭЛЕМЕНТАМИ ИЛИ КОПИРОВАТЬ.
6. ДЛЯ ЗАДАНИЯ ДИСТАНЦИИ МЕЖДУ ЭЛЕМЕНТАМИ В ГРУППЕ ИСПОЛЬЗУЙТЕ СЛОВА X_GAP, Y_GAP. СТАВЬТЕ ИХ ПОСЛЕ ЗАВЕРШЕНИЯ ГРУППЫ.
//-------------------
i, X_GAP, 5,
i, Y_GAP, 5,
//-------------------
//--------------------------------------------------------------------------------------------------+
!!! КРАЙНЕ ВАЖНО: ЗАПРЕЩЕНО ДАВАТЬ ЭЛЕМЕНТАМ ОДИНАКОВЫЕ НАЗВАНИЯ ВНУТРИ ОДНОГО ОКНА.
ЗАПРЕЩЕНО ДАВАТЬ ГРУППАМ ОДИНАКОВЫЕ НАЗВАНИЯ ВНУТРИ ОДНОГО ОКНА.
ИСПОЛЬЗОВАНИЯ A ВМЕСТО ИМЕНИ НЕ ПРИВОДИТ К СОВПАДЕНИЮ ИМЕН.
//----------------------------------------------------------------
ПРИМЕР ПОСТРОЕНИЯ ГРУППЫ:
//--------------------------------------------------------------------------------------------------+
GROUP, A,
__, CHECKBOX, "Checkbox 1", CHECKBOX, "Checkbox 2",
__, CHECKBOX, "Checkbox 3", CHECKBOX, "Checkbox 4",
__, CHECKBOX, "Checkbox 5", CHECKBOX, "Checkbox 6",
__, CHECKBOX, "Checkbox 7", CHECKBOX, "Checkbox 8",
END_GROUP,
//--------------------------
i, AT, _X2X, "MF", 10, _Y2Y, "MF", 10,
i, X_GAP, 30,
i, Y_GAP, 20,
//--------------------------------------------------------------------------------------------------+
!!! НЕ ЗАБЫВАЙТЕ ЗАВЕРШАТЬ ОКНА КОММАНДОЙ END_WINDOW И ГРУППЫ END_GROUP.
НИЖЕ ПРИВЕДЕНЫ ТИПЫ ЭЛЕМЕНТОВ:
//-------------------------------------------------------------
M_ITEM ЭЛЕМЕНТ ОКОН МЕНЮ.
//-------------------------------------------------------------
M_SEP РАЗДЕЛИТЕЛЬ ПУНКТОВ МЕНЮ. СТАВИТСЯ МЕЖДУ НИМИ В ГРУППЕ.
//-------------------------------------------------------------
CHECKBOX ОБЫЧНЫЙ ЧЕКБОКС.
//-------------------------------------------------------------
R_BUTTON ОБЫЧНАЯ РАДИО-КНОПКА.
//-------------------------------------------------------------
S_EDIT ПОЛЕ ВВОДА С КНОПКАМИ. СЛУЖИТ ДЛЯ ПЕРЕКЛЮЧЕНИЯ ЦИФР.
//-------------------------------------------------------------
D_LIST ВЫПАДАЮЩИЙ СПИСОК С ПУНКТАМИ С ПОЛЕМ ВВОДА.
//-------------------------------------------------------------
C_LIST ВЫПАДАЮЩИЙ СПИСОК БЕЗ БЕЗ ПОЛЯ ВВОДА.
//-------------------------------------------------------------
G_FRAME РАМКА ДЛЯ ГРУППЫ С НАЗВАНИЕМ. ИМЕЕТ СВОИ ПРАВИЛА ПОЗИЦИОНИРОВАНИЯ.
//-------------------------------------------------------------
H_SEP ГОРИЗОНТАЛЬНЫЙ РАЗДЕЛИТЕЛЬ. ЛИНИЯ ПОХОЖАЯ НА БОРОЗДУ.
//-------------------------------------------------------------
V_SEP ВЕРТИКАЛЬНЫЙ РАЗДЕЛИТЕЛЬ.
//-------------------------------------------------------------
BUTTON ОБЫЧНАЯ КНОПКА. ИМЕЕТ ТЕКСТ И ИКОНКУ.
//-------------------------------------------------------------
TB_BUTTON ТИП КНОПКИ. ПРИЛИПАЕТ ПРИ НАВЕДЕНИЯ КУРСОРА. ИМЕЕТ ТЕКСТ И ИКОНКУ.
//-------------------------------------------------------------
D_BUTTON КНОПКА ДЛЯ ДИАЛОГОВЫХ ОКОН - ДА, НЕТ, ОТМЕНА...
//-------------------------------------------------------------
I_BUTTON ТИП КНОПКИ. ИМЕЕТ ТЕКСТ И ИКОНКУ.
//-------------------------------------------------------------
SQ_BUTTON ТИП КНОПКИ.
//-------------------------------------------------------------
EDIT ОБЫЧНОЕ ПОЛЕ ВВОДА ДЛЯ ЛЮБЫХ ТЕКСТОВ.
//-------------------------------------------------------------
V_BOX КАНВАС С ПРОКРУТКОЙ - НЕСЕТ ЛЮБЫЕ ГРУППЫ ЭЛЕМЕНТОВ.
//-------------------------------------------------------------
H_SLIDER ГОРИЗОНТАЛЬНЫЙ СЛАЙДЕР. МОЖЕТ ВКЛЮЧАТЬСЯ ТАБЛО С ЦИФРАМИ.
//-------------------------------------------------------------
V_SLIDER ВЕРТИКАЛЬНЫЙ СЛАЙДЕР. МОЖЕТ ВКЛЮЧАСТСЯ ТАБЛО С ЦИФРАМИ.
//-------------------------------------------------------------
T_HEADER ЗАГОЛОВОЧНАЯ ЯЧЕЙКА ЛЮБЫХ ТАБЛИЦ. НИГДЕ БОЛЬШЕ НЕ ИСПОЛЬЗУЕТСЯ.
//-------------------------------------------------------------
R_HEADER ЗАГОЛОВОЧНАЯ ЯЧЕЙКА РЯДОВ ТАБЛИЦ. НИГДЕ БОЛЬШЕ НЕ ИСПОЛЬЗУЕТСЯ.
//-------------------------------------------------------------
C_HEADER ЗАГОЛОВОЧНАЯ ЯЧЕЙКА КОЛОНОК ТАБЛИЦ. НИГДЕ БОЛЬШЕ НЕ ИСПОЛЬЗУЕТСЯ.
//-------------------------------------------------------------
CELL ОБЫКНОВЕННАЯ ЯЧЕЙКА. ИМЕЕТ ТЕКСТ И ИКОНКУ.
//-------------------------------------------------------------
P_BAR ПРОГРЕСС-БАР.
//-------------------------------------------------------------
FRAME ОБЫКНОВЕННАЯ РАМКА.
//-------------------------------------------------------------
H_TAB ГОРИЗОНТАЛЬНАЯ ВКЛАДКА. УПРАВЛЯЕТ ЯВЛЕНИЕМ ГРУПП.
//-------------------------------------------------------------
V_TAB ГОРИЗОНТАЛЬНАЯ ВКЛАДКА. УПРАВЛЯЕТ ЯВЛЕНИЕМ ГРУПП.
//-------------------------------------------------------------
H_LINE ГОРИЗОНТАЛЬНАЯ ЛИНИЯ.
//-------------------------------------------------------------
V_LINE ВЕРТИКАЛЬНАЯ ЛИНИЯ.
//-------------------------------------------------------------
LABEL ИКОНКА.
//-------------------------------------------------------------
REC ПРЯМОУГОЛЬНИК.
//-------------------------------------------------------------
M_TAB ВКЛАДКА ГЛАВНОГО ОКНА. ОТКРЫВАЕТ ОКНА МЕНЮ.
//-------------------------------------------------------------
TIP ВСПЛЫВАЮЩАЯ ПОДСКАЗКА.
//-------------------------------------------------------------
L_ITEM ПУНКТ ВЫПАДАЮЩЕГО И ОБЫЧНОГО СПИСКА.
//-------------------------------------------------------------
BOARD ОБЫКНОВЕННАЯ ТЕКСТОВАЯ МЕТКА.
//-------------------------------------------------------------
T_CELL ЯЧЕЙКА ТАБЛИЦЫ С ПРЕДОПРЕДЕЛЕННЫМ ТЕКСТОМ.
//-------------------------------------------------------------
M_CHECKBOX ЧЕКБОКС ДЛЯ ОКНА МЕНЮ.
//-------------------------------------------------------------
TV_ITEM ПУНКТ ДРЕВОВИДНОГО СПИСКА.
//-------------------------------------------------------------
TV_MENU МЕНЮ ДРЕВОВИДНОГО СПИСКА.
//-------------------------------------------------------------
T_FOLDER СВОРАЧИВАТЕЛЬ ТАБЛИЦ.
//-------------------------------------------------------------
G_FOLDER СВОРАЧИВАТЕЛЬ ГРУПП.
//-------------------------------------------------------------
I_TEXT ТИП ПУНКТА СПИСКОВ.
//-------------------------------------------------------------
T_BOX МНОГОСТРОЧНЫЙ ТЕКСТОВЫЙ БЛОК.
//-------------------------------------------------------------
VALUE ТЕКСТОВАЯ МЕТКА С ПАРАМЕТРОМ. ПЕРЕДАЕТ ЗНАЧЕНИЕ.
//-------------------------------------------------------------
D_BAR ВЕРТИКАЛЬНЫЙ ПРОГРЕСС-БАР. ИСПОЛЬЗУЕТСЯ В ДИАГРАММАХ.
//-------------------------------------------------------------
/**************************************************************
Язык MetaQuotes Language 5 (MQL5) является объектно-ориентированным языком программирования высокого уровня и предназначен для написания автоматических торговых стратегий, пользовательских технических индикаторов для анализа разнообразных финансовых рынков. Он позволяет не только писать разнообразные экспертные системы, предназначенные для...
//--------------------------------------------------------------------------------------------------------------//УСТАНАВЛИВАЕМ СВОЙСТВА ВКЛАДОК: ЦВЕТ В АКТИВИРОВАННОМ И НЕЙТРАЛЬНОМ СОСТОЯНИИ, ТИП РАМКИ, ПАРАМЕТРЫ ГРАДИЕНТА,// ЦВЕТ ПОД КУРСОРОМ, РАЗМЕР ШРИФТА.//--------------------------------------------------------------------------------------------------------------
i, H_TABS,// FRAME_TYPE, _dab,AH_COLOR, (int)C'255,255,255', A_COLOR, (int)C'255,255,255', N_COLOR, (int)C'250,250,250', TENURED,
//----------------------------P_COLOR,(int)C'236,244,252',_,N_FRAME,1, _,A_FRAME,1, _,NP_FRAME,1,NPG_LINES,20, NPG_STEP,1, NG_LINES,20, NG_STEP,1, FONT_SIZE, 12,
END,
//----------------------------
Все объекты, используемые в техническом анализе, имеют привязку на графиках по координатам цены и времени – трендовая линия, каналы, инструменты Фибоначчи и т.д. Но есть ряд вспомогательных объектов, предназначенных для улучшения интерфейса, которые имеют привязку к видимой всегда части графика (основное окно графика или подокна индикаторов...
//+------------------------------------------------------------------+//| Lesson 2. Properties.mqh |//| Peter Konow |//| https://www.mql5.com |//+------------------------------------------------------------------+//----------------------------------------------//УРОК 2. СВОЙСТВА ОКОН, ЭЛЕМЕНТОВ И ОБЪЕКТОВ. ОПЕРАТОРЫ SWITCH, BLOCKS. //----------------------------------------------//---------------------------------//СОДЕРЖАНИЕ://---------------------------------1 . КЛАССИФИКАЦИЯ СВОЙСТВ.
2 . СВОЙСТВА ОКОН.
3 . СВОЙСТВА ЭЛЕМЕНТОВ.
4 . СВОЙСТВА ОБЪЕКТОВ.
5 . ПРОСТЫЕ ОПЕРАТОРЫ.
//---------------------------------1 . СВОЙСТВА ДЕЛЯТСЯ НА ГРУППЫ ПО НЕСКОЛЬКИМ КРИТЕРИЯМ:
//============================================================================================================================
a) ИНДИВИДУАЛЬНЫЕ СВОЙСТВА - УСТАНАВЛИВАЮТСЯ КАЖДОМУ ЭЛЕМЕНТУ ОТДЕЛЬНО ВНУТРИ СТРОКИ ЕГО ОБЪЯВЛЕНИЯ ИЛИ ЗА ПРЕДЕЛАМИ ЕГО ГРУППЫ:
//---------------------------------------------
GROUP, A,
__,REC, "R1" , W, 600 , _,H, 300 ,_,N_FRAME, 1 , _,N_COLOR,( int ) C'255,255,255' , <-- ЦЕПОЧКА ИНДИВИДУАЛЬНЫХ СВОЙСТВ ВНУТРИ СТРОКИ ОБЪЯВЛЕНИЯ ЭЛЕМЕНТА.
(ПЕРЕЧИСЛЕНИЕ ЧЕРЕЗ ЗНАК _, ОБЯЗАТЕЛЬНО. КРОМЕ ПЕРВОГО ОТ ИМЕНИ ЭЛЕМЕНТА).
END_GROUP,
//-----------------------------------//============================================================================================================================
b) ОБЩИЕ СВОЙСТВА ОДНОТИПНЫХ ЭЛЕМЕНТОВ В ГРУППЕ - УСТНАВЛИВАЮТСЯ ВСЕМ ЭЛЕМЕНТАМ ОДНОГО ТИПА В ГРУППЕ.
//-------------------------------------------------------
GROUP, "Main tabs" ,
__, H_TAB, "Цветовые настройки" ,ON, H_TAB, "Индикаторы" , H_TAB, "Горячие клавиши" ,
END_GROUP,
//----------------------------//ПОЗИЦИЯ ГРУППЫ НА КАНВАСЕ ОКНА.//----------------------------
i, AT, _X2X, "MF" , 5 , _Y2Y, "MF" , 5 ,
//----------------------------
i, H_TABS, <---- ОБЪЯВЛЯЕМ НАЧАЛО УСТАНОВКИ СВОЙСТВ ОДНОТИПНОМУ МНОЖЕСТВУ ЭЛЕМЕНТОВ
(ПИШЕМ НАЗВАНИЕ ЭЛЕМЕНТА ВО МНОЖЕСТВЕННОМ ЧИСЛЕ).
//----------------------------
AH_COLOR, ( int ) C'255,255,255' ,
A_COLOR, ( int ) C'255,255,255' ,
N_COLOR, ( int ) C'250,250,250' ,
P_COLOR, ( int ) C'236,244,252' ,
N_FRAME, 1 ,
A_FRAME, 1 , <---- УСТАНОВКА СВОЙСТВ ГРУППЕ ВКЛАДОК.
NP_FRAME, 1 ,
NPG_LINES, 20 ,
NPG_STEP, 1 ,
NG_LINES, 20 ,
NG_STEP, 1 ,
FONT_SIZE, 12 , (ПОРЯДОК ПЕРЕЧИСЛЕНИЯ НЕ ИМЕЕТ ЗНАЧЕНИЯ).
//----------------------------
END, <---- ЗАВЕРШАЕМ МАССОВУЮ УСТАНОВКУ СВОЙСТВ.
//----------------------------//============================================================================================================================
c) СВОЙСТВА, ПЕРЕД КОТОРЫМИ СТАВИТСЯ ПРЕФИКС СОСТОЯНИЯ. СУЩЕСТВУЕТ 8 (ВОСЕМЬ) ОСНОВНЫХ СОСТОЯНИЙ ЭЛЕМЕНТА:
//-------------------------------------------------------------------------------------------- 1 ) НЕЙТРАЛЬНОЕ СОСТОЯНИЕ - ПРЕФИКС N_.
2 ) НЕЙТРАЛЬНОЕ В ФОКУСЕ СОСТОЯНИЕ - ЭЛЕМЕНТ ВЫДЕЛЕН, НО НЕ АКТИВИРОВАН - ПРЕФИКС NH_.
3 ) АКТИВИРОВАННОЕ СОСТОЯНИЕ - ПРЕФИКС A_.
4 ) АКТИВИРОВАННОЕ В ФОКУСЕ СОСТОЯНИЕ - ЭЛЕМЕНТ АКТИВИРОВАН И ВЫДЕЛЕН ПОЛЬЗОВАТЕЛЕМ - ПРЕФИКС AH_.
5 ) БЛОКИРОВАННОЕ НЕЙТРАЛЬНОЕ СОСТОЯНИЕ - ПРЕФИКС NB_.
6 ) БЛОКИРОВАННОЕ АКТИВИРОВАННОЕ СОСТОЯНИЕ - ПРЕФИКС AB_.
7 ) НЕЙТРАЛЬНОЕ ПОД КУРСОРОМ - ПРЕФИКС NP_.
8 ) АКТИВИРОВАННОЕ ПОД КУРСОРОМ - ПРЕФИКС AP_.
//-----------------------------------------------
СПИСОК СВОЙСТВ ОПРЕДЕЛЯЕМЫХ СОСТОЯНИЕМ ЭЛЕМЕНТОВ:
//-----------------------------------------------1 ) ЦВЕТОВЫЕ СВОЙСТВА: ОСНОВАНИЯ ЭЛЕМЕНТОВ И ТЕКСТЫ.
N_COLOR, A_COLOR, NH_COLOR, AH_COLOR, NB_COLOR, AB_COLOR, NP_COLOR, AP_COLOR.
РАМКИ ОСНОВАНИЙ ЭЛЕМЕНТОВ:
N_FRAME_COLOR, A_FRAME_COLOR, NH_FRAME_COLOR, AH_FRAME_COLOR, NP_FRAME_COLOR, AP_FRAME_COLOR.
//------------------------------------------------------------------------------------------
(ДЛЯ УСТАНОВКИ ЭТИХ СВОЙСТВ ТЕКСТАМ ЭЛЕМЕНТОВ ИЛИ ДРУГИМ СОСТАВНЫМ ДЕТАЛЯМ, ПИШУТСЯ ИХ НАЗВАНИЯ: text, label, canvas, bar)
_,text,A_COLOR,( int ) C'255,255,255' , <-- ЦВЕТ БУДЕТ УСТНОВЛЕН ТЕКСТУ, А НЕ ОСНОВАНИЮ.
//------------------------------------------------------------------------------------------ 2 ) ЗВУКОВЫЕ СВОЙСТВА - A_SOUND, N_SOUND <-- ЗВУК НА НАЖАТИИ/ОТЖАТИИ ЭЛЕМЕНТА.
_,A_SOUND, "::Sounds\\Windows Ding.wav" , _,N_SOUND, "::Sounds\\Windows Default.wav"//------------------------------------------------------------------------------------------ 3 ) СВОЙСТВА ДЛИННА ТЕНИ И ВЫДВИЖЕНИЯ ОБЪЕКТОВ text и label - A_SHADOW, P_SHADOW, A_MOVE, P_MOVE.
_,bar,NH_COLOR,( int ) C'255,255,255' ,(ЦВЕТ ПОЛОСЫ СЛАЙДЕРА (ИЛИ D_BAR ИЛИ P_BAR) В СОСТОЯНИИ НЕЙТРАЛЬНЫЙ В ФОКУСЕ).
_,label, A_SHADOW, 3 , (В АКТИВИРОВАННОМ СОСТОЯНИИ, ТЕНЬ ИКОНКИ СДВИГАЕТСЯ 3 ПИКСЕЛЯ).
_,label, P_MOVE, 2 , (СДВИГ ИКОНКИ ПРИ НАВЕДЕНИИ КУРСОРА НА 2 ПИКСЕЛЯ ВНИЗ И ВПРАВО).
4 )СВОЙСТВА ТЕКСТОВ:
1 )TEXT_FONT - ШРИФТ ТЕКСТА. _,TEXT_FONT, "Microsoft JhengHei Light" ,
2 )TEXT_STYLE - СТИЛЬ ТЕКСТА. _,TEXT_STYLE, ( int ) FW_NORMAL ,
3 )FONT_SIZE - РАЗМЕР ШРИФТА _,FONT_SIZE, 25 ,
4 )TEXT_ANGLE - УГОЛ НАКЛОНА ТЕКСТА _,TEXT_ANGLE, 450 , ( 45 ГРАДУСОВ).
//--------------------------------------------------------------------------------------------
d) СВОЙСТВА-ФЛАГИ - ДЛЯ РАЗНЫХ ЭЛЕМЕНТОВ ИЛИ ОКОН ЕСТЬ РАЗНЫЕ СВОЙСТВА-ФЛАГИ:
//--------------------------------------------------------------------------------------------
ЭЛЕМЕНТЫ:
//-----------------1 ) FIC (FIXED_IF_CLICKED), FIXED_IF_DOUBLE_CLICKED - КНОПКИ.
2 ) IS_APPEARANCE_CONTROLLER (ПЕРЕЧИСЛЕНИЕ ЭЛЕМЕНТОВ ЗАВЕРШАЮЩЕЕСЯ НА END) - ВКЛАДКИ И КНОПКИ.
3 ) IS_HIDDEN - ФЛАГ ПРЯЧУЩИЙ ЛЮБЫЕ ЭЛЕМЕНТЫ ИЛИ ГРУППЫ (ЗАВИСИТ ГДЕ ПОСТАВЛЕН). В ЗАВИСИМОСТИ 1 ИЛИ 0 .
4 ) POINTED - ФЛАГ УСТАНАВЛИВАЮЩИЙ РЕАКЦИЮ ЭЛЕМЕНТОВ НА НАВЕДЕНИЕ КУРСОРА В ЗАВИСИМОСТИ 1 ИЛИ 0 .
5 ) READ_ONLY - ФЛАГ ДЛЯ ПОЛЕЙ ВВОДА.
6 ) IS_TABLE - ФЛАГ ТАБЛИЦЫ. УСТНАВЛИВАЕТСЯ ГРУППЕ ЭЛЕМЕНТОВ, КОТОРУЮ НУЖНО ПРЕДСТВИТЬ В ВИДЕ ТАБЛИЦЫ.
7 ) IS_MOVABLE - УСТАНАВЛИВАЕТ ПЕРЕМЕЩАЕМОСТЬ ЭЛЕМЕНТА ПО КАНВАСУ.
8 ) IS_STRETCHABLE - УСТАНАВЛИВАЕТ РАСТЯГИВАЕМОСТЬ ЭЛЕМЕНТА НА КАНВАСЕ.
9 ) SHOW_NAMETIP - УСТАНАВЛИВАЕТ ВСПЛЫВАЮЩУЮ ПОДСКАЗКУ С ИМЕНЕМ ЭЛЕМЕНТА.
10 )SHOW_WIDGET - УСТАНАВЛИВАЕТ ТАБЛО ДЛЯ СЛАЙДЕРА, СМЕЩАЮЩЕЕСЯ ЗА РУЧКОЙ.
11 )SCROLLBAR_ON_LEFT - УСТАНАВЛИВАЕТ СКРОЛЛ-БАР С ЛЕВОЙ СТОРОНЫ.
12 ) ALL_STATES_SAME_COLOR - УСТАНАВЛИВАЕТ ОДИНАКОВЫЙ ЦВЕТ ДЛЯ ВСЕХ СОСТОЯНИЙ ЭЛЕМЕНТА.
13 ) CWIP (CLOSE WINDOW IF PRESSED) - УСТАНАВЛИВАЕТСЯ КНОПКАМ ДИАЛОГОВЫХ ОКОН. ЗАКРЫВАЕТ ОКНО НА НАЖАТИИ КНОПКИ.
14 ) A2G (ADAPT_2_GRADIENT) - ПРИСПОСАБЛИВАЕТ ЦВЕТ ОСНОВАНИЯ ЭЛЕМЕНТА К ГРАДИЕНТУ ЕГО КАНВАСА.
15 )H_GRADIENT - МЕНЯЕТ РАСКЛАДКУ ГРАДИЕНТА НА ВЕРТИКАЛЬНУЮ.
16 )TEXT_ALIGN - УСТАНАВЛИВАЕТ РАСКЛАДКУ ПОЛЯ ВВОДА. ЕСТЬ ДВА ФЛАГА TEXT_ALIGN_RIGHT И TEXT_ALIGN_CENTER.
17 )SHOWS_TIP - УСТАНАВЛИВАЕТ ВСПЛЫВАЮЩУЮ ПОДСКАЗКУ С ЗАДАННЫМ СОДЕРЖАНИЕМ.
18 )FRAME_TYPE - УСТАНАВЛИВАЕТ ТИП РАМКИ ОБЪЕКТА (МОЖНО ЗАДАВАТЬ 1 , 2 , 3 ИЛИ ВСЕ 4 СТОРОНЫ РАМКИ).
19 )A_TEXT - УСТАНАВЛИВАЕТ АЛЬТЕРНАТИВНЫЙ ТЕКСТ, ПОЯВЛЯЮЩИЙСЯ ПРИ НАЖАТИИ НА КНОПКУ.
20 )SWITCH_ALL - УСТАНАВЛИВАЕТ ПЕРЕКЛЮЧЕНИЯ ВСЕХ ЭЛЕМЕНТОВ В ГРУППЕ. (ПО ПРИНЦИПУ РАДИО-КНОПОК).
21 )OPENS_WINDOW - УСТАНАВЛИВАЕТ ОТКРЫТИЕ УКАЗАННОГО ОКНА ПРИ НАЖАТИИ НА ЭЛЕМЕНТ.
22 )KC_TEXT - УСТАНАВЛИВАЕТ ТЕКСТ В ПРАВОЙ СТОРОНЕ ПУНКТА ОКНА МЕНЮ.
23 )ROOT - ОСНОВНОЙ СВОРАЧИВАТЕЛЬ, СОЗДАЮЩИЙ ДРЕВОВИДНУЮ СТРУКТУРУ СПИСКУ ЭЛЕМЕНТОВ.
24 )ON - УСТАНАВЛИВАЕТ ИЗНАЧАЛЬНО ВКЛЮЧЕННОЕ СОСТОЯНИЕ ЭЛЕМЕНТУ.
25 )SET_TAB_CLOSER - УСТАНАВЛИВАЕТ КРЕСТИК ЗАКРЫТИЯ ДЛЯ ВКЛАДКИ. (РАБОТАЕТ ТОЛЬКО В ДИНАМИЧНОМ СПИСКЕ).
26 )C_FUNCTION - УСТАНАВЛИВАЕТ ВЫЗОВ ФУНКЦИИ НА КЛИКЕ НА ЭЛЕМЕНТ.
27 )DC_FUNCTION - УСТАНАВЛИВАЕТ ВЫЗОВ ФУНКЦИИ НА ДАБЛ-КЛИКЕ НА ЭЛЕМЕНТ.
28 )DnD_FUNCTION - УСТАНАВЛИВАЕТ ВЫЗОВ ФУНКЦИИ НА СОБЫТИИ Drag_n_Drop.
29 )SWITCH - УСТАНАВЛИВАЕТ ПЕРЕЧИСЛЕНИЕ ПЕРЕКЛЮЧАЕМЫХ ЭЛЕМЕНТОВ ЗАВЕРШАЮЩЕЕСЯ НА END.
30 )BLOCKS - УСТАНАВЛИВАЕТ ПЕРЕЧИСЛЕНИЕ БЛОКИРУЕМЫХ ЭЛЕМЕНТОВ ЗАВЕРШАЮЩЕЕСЯ НА END.
ФЛАГИ ТАБЛИЦ:
//-----------------1 ) IS_ZEBRA_STYLE - УСТАНАВЛИВАЕТ СТИЛЬ ЗЕБРА.
2 ) ADJUSTABLE_COLUMNS - УСТАНАВЛИВАЕТ РАСТЯГИВАЕМОСТЬ КОЛОНОК ТАБЛИЦЫ.
3 ) IS_INTERACTIVE - УСТАНАВЛИВАЕТ РЕАГИРОВАНИЕ РЯДОВ НА КУРСОР.
4 ) HIDE_SHOW_COLOMN - УСТАНАВЛИВАЕТ ВОЗМОЖНОСТЬ ПРЯТАТЬ/ЯВЛЯТЬ КОЛОНКИ ТАБЛИЦЫ.
5 ) ROTATE_COLOMNS - УСТАНАВЛИВАЕТ ВОЗМОЖНОСТЬ МЕНЯТЬ КОЛОНКИ МЕСТАМИ.
6 ) IS_DINAMIC - ДЕЛАЕТ ТАБЛИЦУ ДИНАМИЧЕСКОЙ.
7 ) ZB_COLOR - УСТАНАВЛИВАЕТ ЦВЕТ СТИЛЯ ЗЕБРЫ 1 .
8 ) ZD_COLOR - УСТАНАВЛИВАЕТ ЦВЕТ СТИЛЯ ЗЕБРЫ 2 .
9 ) PAINT_VALUES - РАСКРАШИВАЕТ ЗНАЧЕНИЯ В ЯЧЕЙКАХ.
10 ) ROW - ОТКРЫВАЕТ ПЕРЕЧИСЛЕНИЯ ДЛЯ УСТАНОВКИ СВОЙСТВ ВЫБРАННОГО РЯДА ТАБЛИЦЫ. ЗАКАНЧИВАЕТСЯ END.
11 ) COLOMN - ОТКРЫВАЕТ ПЕРЕЧИСЛЕНИЯ ДЛЯ УСТАНОВКИ СВОЙСТВ ВЫБРАННОЙ КОЛОНКИ ТАБЛИЦЫ. ЗАКАНЧИВАЕТСЯ END.
12 ) SELECTABLE_ROWS - УСТАНВАЛИВАЕТ ВЫБИРАЕМЫМИ РЯДЫ ТАБЛИЦ.
13 ) IS_SORTABLE - УСТАНАВЛИВАЕТ ВОЗМОЖНОСТЬ СОРТИРОВКИ РЯДОВ.
СВОЙСТВА ПАРАМЕТРОВ:
//-----------------1 ) PARAM_TYPE, - _DOUBLE, _INT, MENU, RANGE, <-- ТИПЫ ПАРАМЕТРОВ.
2 ) V_CURRENT - УСТАНАВЛИВАЕТ ИСХОДНОЕ ЗНАЧЕНИЕ ПАРАМЕТРУ ЭЛЕМЕНТА.
3 ) V_MIN - УСТАНАВЛИВАЕТ ГРАНИЦУ МИНИМАЛЬНОГО ЗНАЧЕНИЯ (ДЛЯ СЛАЙДЕРОВ И ПОЛЕЙ ВВОДА С КНОПКАМИ).
4 ) V_MAX - УСТАНАВЛИВАЕТ ГРАНИЦУ МАКСИМАЛЬНОГО ЗНАЧЕНИЯ (ДЛЯ СЛАЙДЕРОВ И ПОЛЕЙ ВВОДА С КНОПКАМИ).
5 ) V_STEP - УСТАНАВЛИВАЕТ ШАГ ЗНАЧЕНИЯ (ДЛЯ СЛАЙДЕРОВ И ПОЛЕЙ ВВОДА С КНОПКАМИ).
6 ) DIGITS - УСТАНАВЛИВАЕТ КОЛИЧЕСТВО ЦИФР ПОСЛЕ ТОЧКИ.
7 ) __UNITS - УСТАНАВЛИВАЕТ ЕДИНИЦЫ ИЗМЕРЕНИЯ ПЕРЕД ЗНАЧЕНИЕМ.
8 ) __UNITS - УСТАНАВЛИВАЕТ ЕДИНИЦЫ ИЗМЕРЕНИЯ ПОСЛЕ ЗНАЧЕНИЯ.
ОКНА. ФЛАГИ:
//-----------------1 ) ALWAYS_ON_TOP - ОКНО ВСЕГДА СВЕРХУ.
2 ) NIM (NAME_IN_MIDDLE) - ИМЯ ОКНА РАСПОЛОЖИТЬ ПО ЦЕНТРУ.
3 ) OOI (OPEN_ON_INIT) - ОТКРЫВАТЬ ОКНО НА ИНИЦИАЛИЗАЦИИ ПРОГРАММЫ.
4 ) CLOSE_IF_OUT_OF_FOCUS - ЗАКРЫВАТЬ ОКНО, ЕСЛИ БЫЛ КЛИК НА ЛЮБОЕ ДРУГОЕ МЕСТО, КРОМЕ ОКНА.
5 ) LOCKS_ALL_WINDOWS - БЛОКИРУЕТ ВСЕ ОКНА ДО СВОЕГО ЗАКРЫТИЯ.
6 ) ONLY_CLOSING - УБИРАЕТ ВОЗМОЖНОСТЬ МИНИМИЗАЦИИ ОКНА, ОСТАВЛЯЯ ТОЛЬКО КРЕСТИК ЗАКРЫТИЯ.
ОБЩИЕ СВОЙСТВА ОКОН:
//-----------------1 ) MARGINS, 10 , 10 - УСТАНАВЛИВАЕТ ПОПРАВКИ К РАЗМЕРАМ ОКНА, КОТОРОЕ АВТОМАТИЧЕСКИ РАСЧИТЫВАЕТСЯ ПО РАЗМЕРУ ЕГО СОДЕРЖАНИЯ.
2 ) OPENING_SOUND - УСТАНАВЛИВАЕТ ЗВУК ПРОИГРЫВАЕМЫЙ ПРИ ОТКРЫТИИ ОКНА.
3 ) LOCKS_WINDOWS - ПЕРЕЧИСЛЕНИЕ НАИМЕНОВАНИЙ ОКОН, КОТОРЫЕ НУЖНО БЛОКИРОВАТЬ ДО ЗАКРЫТИЯ ЭТОГО ОКНА. ЗАКАНЧИВАТЬ END.
4 ) CAPTION - ОКНА ОБЯЗАНЫ ИМЕТЬ РАЗНЫЕ ИМЕНА, НО ЗАГОЛОВКИ ОКНО МОГУТ БЫТЬ ОДИНАКОВЫМИ (НАПРИМЕР У ДИАЛОГОВЫХ ОКОН СО ШТАТНЫМИ СООБЩЕНИЯМИ).
NEW_WINDOW, W_NAME, "Cправочник KIB1" , W_ICON, "::Images\\Help book 3d.bmp" , W_TYPE,SETTINGS, OOI, MARGINS, 17 , 17 ,ALWAYS_ON_TOP,NAME_IN_MIDLLE,
NEW_WINDOW, W_NAME, "Risk managment acsess" , CAPTION, "Acsess authorization" , W_ICON, "::Images\\Key.bmp" , W_TYPE, DIALOG, ONLY_CLOSING, ALWAYS_ON_TOP, OOI,
//--------------------------------------------------------------------------------------------
これは基本中の基本で、必ず知っておかなければならないルールです。これがそのファイルです。(アセンブリにもあります)。
窓際の内側は問題ありません。Rafilさん、ボタンの_,FICプロパティを設定してから、もう一度試してみてください。
__,BUTTON, "Button",_,FIC,
手段: 固定化された場合 Сlisked
窓際の内側は問題ありません。Rafilさん、_,FICプロパティをあなたのボタンに設定して、もう一度試してみてください。
よかった、でもまだプロパティのレッスンは掲載されていないんですね。
今日、投稿します。1時間くらいで。実は、この問題はすでに解決しているんです。ボタンは、プッシュされた場合のみ、押された/押されなかったを表示します。ウィンドウエリアでは動作します。ウィンドウエリア外では動作していましたが、今は停止しているようです。修正する必要がある。
ボタンは押したままロックされる場合とされない場合があります。ラッチさせたい場合は、プロパティ_,FICを入れて ください。
ちなみに、タブのプロパティにも気を配ってください。ここにいます。
ピンク色で。
緑色で。
青色で。
要素のプロパティ。パート1-基本。パート2-例。