Галерея UI написанных на MQL - страница 36

 
Реter Konow #:
Большая просьба к людям которые пробуют создавать интерфейс или тестируют конструктор. Пожалуйста сообщайте обо всех найденных багах. Обратная связь от вас очень важна. Заранее спасибо. 

Я раздумывал, надо ли, или подождать до выяснения...

Ну тогда вот. Не знаю, это баг или я неправильно написал код.

Какой-то мусор заполняет на V_BOX свободное от таблицы место.

Кроме того, на H_TAB, "Report", пока я не добавил иконку, был виден какой-то призрак иконки, искажавший название. Он пропадал после нажатия.

Не знаю, баг ли это, но отсутствуют описанные TEXT_ALIGN_*.

Есть ещё много вопросов по реализации, пока разбираюсь самостоятельно. Думаю, надо ждать, когда Вы дойдёте до этих тем. Если Вы не считаете по-другому.

NEW_WINDOW,
W_NAME, "CryptoPanel",
W_TYPE, SETTINGS,
OPEN_ON_INIT,
ALWAYS_ON_TOP,


GROUP, "Win",
        //__, G_FRAME, "Frame", _, W, 1580, _, H, 45, 
        __, V_BOX, "Tab", _, W, 1597, _, H, 610, 
        __, 
                H_TAB, "Report", ON, 
                        _, N_LABEL, "::Images\\16x16\\Briefcase.bmp", 
                H_TAB, "Options", N_LABEL, "::Images\\16x16\\Application.bmp", 
                GAP, 100, 
                TB_BUTTON, "Refresh", W, 100, _, text, N_COLOR, (uint)clrBlue, _, N_LABEL, "::Images\\16x16\\Refresh.bmp", 
END_GROUP,
i, AT, LEFT_TOP, 0, 0,
i, H_TABS, text, A_COLOR, (uint)clrGreen, 
i, SWITCH, "Report", "Options", END,


GROUP, "Frames",
        //__, G_FRAME, "Frame", _, W, 1580, _, H, 45, 
        __, V_BOX, "Frame1", _, W, 1593, _, H, 85, 
        __, V_BOX, "Frame2", _, W, 1593, _, H, 520, 
END_GROUP,
i, IN, "Tab",
i, AT, LEFT_TOP, 0, 0,


GROUP, "Balances", IS_TABLE, 
        __, T_HEADER, "Exchange", W, 110, C_HEADER, "$", W, 100, C_HEADER, "MX", W, 160, C_HEADER, "USDT", W, 130, C_HEADER, "USDC", W, 90, C_HEADER, "IRON", W, 120, 
        __, R_HEADER, "MEXC", CELL, A, TEXT, "5 625.59", CELL, A, TEXT, "1 198.10337776", CELL, A, TEXT, "281.0668527", CELL, A, TEXT, "12.6819", CELL, A, TEXT, "2.79368472", 
        __, R_HEADER, "Bybit", CELL, A, TEXT, "123.45", CELL, A, TEXT, " ", CELL, A, TEXT, "123.45", CELL, A, TEXT, " ", CELL, A, TEXT, " ", 
        __, R_HEADER, "Binance", CELL, A, TEXT, "123.45", CELL, A, TEXT, " ", CELL, A, TEXT, "123.45", CELL, A, TEXT, " ", CELL, A, TEXT, " ", 
END_GROUP,
i, IN, "Frame1",
i, AT, LEFT_TOP, 0, 0,
i, T_HEADERS, 
        TEXT_STYLE, (int)FW_BOLD, 
        FONT_SIZE, 10, 
        text, _A1_, _X2X, 
        text, _C1_, 20, 
        text, N_COLOR, (int)C'86,86,86', 
        NG_LINES, 30, NG_STEP, -1,
        POINTED, 0, 
        N_COLOR, (int)C'219,233,249', A_COLOR, (int)C'155,244,196', AH_COLOR, (int)C'155,244,196', 
        END,
i, C_HEADERS, 
        TEXT_STYLE, (int)FW_BOLD, 
        FONT_SIZE, 10, 
        text, _A1_, _X2X, 
        text, _C1_, 20, 
        text, N_COLOR, (int)C'86,86,86', 
        NG_LINES, 30, NG_STEP, -1,
        POINTED, 0, 
        N_COLOR, (int)C'219,233,249', A_COLOR, (int)C'155,244,196', AH_COLOR, (int)C'155,244,196', 
        END,
i, R_HEADERS, 
        TEXT_STYLE, (int)FW_BOLD, 
        FONT_SIZE, 10, 
        text, _A1_, _X2X, 
        text, _C1_, 20, 
        text, N_COLOR, (int)C'86,86,86', 
        NG_LINES, 30, NG_STEP, -1,
        POINTED, 0, 
        N_COLOR, (int)C'219,233,249', A_COLOR, (int)C'155,244,196', AH_COLOR, (int)C'155,244,196', 
        END,
i, CELLS, 
        N_FRAME_COLOR, (int)C'177,194,214', 
        text, _A1_, _X2X, 
        text, _C1_, 10, 
        FONT_SIZE, 10, 
        TEXT_FONT, "Courier New", 
        //TEXT_ALIGN_RIGHT, 
        END,


GROUP, "Log", IS_TABLE, 
        __, C_HEADER, "Time", W, 210, C_HEADER, "Exch", W, 90, C_HEADER, "Op", W, 60, C_HEADER, "Message", W, 520, 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
END_GROUP,
i, IN, "Frame2",
i, AT, LEFT_TOP, 0, 0, 
i, C_HEADERS, 
        TEXT_STYLE, (int)FW_BOLD, 
        FONT_SIZE, 10, 
        text, _A1_, _X2X, 
        text, _C1_, 20, 
        text, N_COLOR, (int)C'86,86,86', 
        NG_LINES, 30, NG_STEP, -1,
        POINTED, 0, 
        N_COLOR, (int)C'219,233,249', A_COLOR, (int)C'155,244,196', AH_COLOR, (int)C'155,244,196', 
        END,
i, CELLS, 
        N_FRAME_COLOR, (int)C'177,194,214', 
        text, _A1_, _X2X, 
        text, _C1_, 10, 
        FONT_SIZE, 10, 
        TEXT_FONT, "Courier New", 
        END,


END_WINDOW,
 
Edgar Akhmadeev #:

Я раздумывал, надо ли, или подождать до выяснения...

Ну тогда вот. Не знаю, это баг или я неправильно написал код.

Какой-то мусор заполняет на V_BOX свободное от таблицы место.

Кроме того, на H_TAB, "Report", пока я не добавил иконку, был виден какой-то призрак иконки, искажавший название. Он пропадал после нажатия.

Не знаю, баг ли это, но отсутствуют описанные TEXT_ALIGN_*.

Есть ещё много вопросов по реализации, пока разбираюсь самостоятельно. Думаю, надо ждать, когда Вы дойдёте до этих тем. Если Вы не считаете по-другому.

Благодарю за фидбэк. 

По коду:

1. V-box (ы) и вкладки всегда пишутся в отдельных группах. Так удобнее. Желательно ничего другое в эти группы не добавлять. Иначе начинаются "джунгли позиционирования". Конечно и так можно, но не стоит...

2. Перечисление не закончено. Нет к.слово END в этой строке.

('Довольно грубая ошибка для конструктора. Может сильно глючить.)

i, H_TABS, text, A_COLOR, (uint)clrGreen, ....?


3. В таблицах Вы поставили слово "TEXT". Это лишнее. Ячейки CELL имеют свой параметр который получает значение от пользовательского приложения при подключении. Либо, используйте установку значения с помощью слова  V_CURRENT.   

Например:

CELL, A, V_CURRENT, 123,


А для отображения неизменного текста в таблицах используются ячейки типа "T_CELL". Они передают в таблицу текст имени. Например: 

T_CELL, "12341234123",

//или

T_CELL, "Profit",


4. Попробуйте убрать слово TEXT из таблиц. 


5. Сообщите что получилось. Буду рад помочь.

 

Вопрос:

Есть каталог "Include\(1) KIB 1.0\(1) БАЗА\(1) ДОКУМЕНТАЦИЯ\"

Это просто примеры кода, или это предназначено для совместной компиляции как демо-программы? Как правильно этим пользоваться?

 

Еще важный нюанс. В заголовке всех таблиц пишется элемент T_HEADER:

GROUP, "Log", IS_TABLE, 

        __, T_HEADER, "LOG",   C_HEADER, "Time", W, 210, C_HEADER, "Exch", W, 90, C_HEADER, "Op", W, 60, C_HEADER, "Message", W, 520, 

        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, TEXT, "2024.07.01 16:00:06", CELL, A, TEXT, "Binance", CELL, A, TEXT, "Conv", CELL, A, TEXT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
 
Edgar Akhmadeev #:

Вопрос:

Есть каталог "Include\(1) KIB 1.0\(1) БАЗА\(1) ДОКУМЕНТАЦИЯ\"

Это просто примеры кода, или это предназначено для совместной компиляции как демо-программы? Как правильно этим пользоваться?

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

В следующем билде я почищу эту базу кодов и оставлю только рабочии варианты.

 

Очень важный нюанс. Вкладки управляют переключением изображений канваса V_BOX(а). Они должны быть объявлены выше. Сначала вкладки, затем  V_BOX(ы).

 
Edgar Akhmadeev #:

Вопрос:

Есть каталог "Include\(1) KIB 1.0\(1) БАЗА\(1) ДОКУМЕНТАЦИЯ\"

Это просто примеры кода, или это предназначено для совместной компиляции как демо-программы? Как правильно этим пользоваться?

Самые рабочие коды находятся в папке  "Include\(1) KIB 1.0\(1) БАЗА\ (2) ШТАТНЫЙ KIB-CODE" 

Там коды окон конструктора. Можете смело изучать.

 
Реter Konow #:

1. V-box (ы) и вкладки всегда пишутся в отдельных группах. Так удобнее. Желательно ничего другое в эти группы не добавлять. Иначе начинаются "джунгли позиционирования". Конечно и так можно, но не стоит...

Реter Konow #:
Очень важный нюанс. Вкладки управляют переключением изображений канваса V_BOX(а). Они должны быть объявлены выше. Сначала вкладки, затем  V_BOX(ы).

Я пока не разобрался, как работать со вкладками. H_TAB нарисовал, но это просто кнопки, а как переключать с их помощью вкладки не знаю. Мне бы пример с двумя вкладками. Или рано об этом?

Реter Konow #:

3. В таблицах Вы поставили слово "TEXT". Это лишнее. Ячейки CELL имеют свой параметр который получает значение от пользовательского приложения при подключении. Либо, используйте установку значения с помощью слова  V_CURRENT.

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

А  V_CURRENT помог, мусор исчез.

Реter Konow #:
Еще важный нюанс. В заголовке всех таблиц пишется элемент T_HEADER

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

Во второй таблице этот столбец не нужен, поэтому я не добавил его. Но получилось хорошо.

Вторая таблица - будущий журнал событий. Возможно, таблица - неудачный вариант для этого? Если программно будет трудно добавлять строки.

 
Edgar Akhmadeev #:

на H_TAB, "Report", пока я не добавил иконку, был виден какой-то призрак иконки, искажавший название. Он пропадал после нажатия.

Не знаю, баг ли это, но отсутствуют описанные TEXT_ALIGN_*.

Это пока не отвечено.

И вместо TB_BUTTON хотел применить I_BUTTON, но там надо знать, как выравнивать иконку и текст, по умолчанию они накладываются.

 
Edgar Akhmadeev #:

Я пока не разобрался, как работать со вкладками. H_TAB нарисовал, но это просто кнопки, а как переключать с их помощью вкладки не знаю. Мне бы пример с двумя вкладками. Или рано об этом?

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

А  V_CURRENT помог, мусор исчез.

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

Во второй таблице этот столбец не нужен, поэтому я не добавил его. Но получилось хорошо.

Вторая таблица - будущий журнал событий. Возможно, таблица - неудачный вариант для этого? Если программно будет трудно добавлять строки.

Возмите пример из окна Labels Menu в  "Include\(1) KIB 1.0\(1) БАЗА\ (2) ШТАТНЫЙ KIB-CODE" . Там объявлена группа вкладок и V_BOX. Он всего один на три вкладки. Каждая являет свою группу иконок. Можете использовать это как шаблон. Только там вкладки сверху, а не снизу. Попробуйте поставить их снизу. Думаю получится.


//===================================================================================================================
 GROUP, "Main tabs",

__, H_TAB, "16x16",ON,   H_TAB, "24x24",  H_TAB, "32x32", GAP,150, EDIT, "E1", W, 320, _,READ_ONLY,  

END_GROUP,
//----------------------------
i, AT, _X2X, "MF", 2, _Y2Y, "MF",2,

i, SWITCH,"16x16","24x24","32x32",END,
i, TENURED,
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',  NPG_LINES,20, NPG_STEP,1, NG_LINES,20, NG_STEP,1, END,

"16x16",     IS_APPEARANCE_CONTROLLER,  "LABELS 16*16",END,
"24x24",     IS_APPEARANCE_CONTROLLER,  "LABELS 24*24", END,
"32x32",     IS_APPEARANCE_CONTROLLER,  "LABELS 32*32", END,
//----------------------------------------------------------------------------------
"LABELS 16*16","24x24","32x32", 
//===================================================================================================================

//===================================================================================================================
//----------------------------------------------------------------------------------
GROUP,"Labels v_box 16*16",

__,   V_BOX,"V1", W,800, _,H,330,_,N_FRAME,1,_,A_FRAME,1,_,NP_FRAME,1, AP_FRAME,1,

END_GROUP,
//----------------------------
i, AT, _X2X, "16x16", 0, _Y2H, "16x16", -1,/**/
//===================================================================================================================