Galleria di interfacce utente scritte in MQL - pagina 38

 
Siamo un po' avanti, ma dopo l'aggiornamento torneremo al programma di formazione precedente. Ma già con la possibilità di collegare i consulenti. Non è rimasto molto.
 
Реter Konow #:
La mia risposta è stata utile?

1. Se i pulsanti sono posizionati nella cornice con il comando i, AT, LEFT_TOP - tutto va bene.

Se li posizionate all'estremità destra della barra delle applicazioni con i, AT, _W2W, "MF", -40, _Y2Y, "MF", 0, - l'icona viene duplicata all'estremità sinistra della barra:

E quando si passa il mouse sul pulsante, la sua cornice viene disegnata anche all'estremità sinistra, chiudendo le schede, e il nome del pulsante è incasinato:

Bug o mio FAIL - non capisco.

2. C'è una zona morta all'estremità destra della barra delle applicazioni. Nella schermata si nota un artefatto. Tutte le dimensioni impostate sembrano corrette. Ma devo essermi sbagliato da qualche parte nel codice.

3. Quando si cambia scheda, i comandi "Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", END non sono sufficienti. I riquadri vengono riaccesi, ma le tabelle in essi contenute no. Devo elencare esplicitamente i comandi "Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", "Balances", "Log", END.

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


//===================================================================================================================
GROUP, "Taskbar", 
        __,  V_BOX, "TaskbarPanel", IS_H_TAB_BOX, _, N_FRAME, 1, _, N_COLOR, (int)C'245,245,245', _, W, 1597, _, H, 35, _, FRAME_TYPE, _da, 
END_GROUP,
//---------------------------------------------
i, AT, _X2X, "MF", -18, _Y2Y, "MF", 0, 
 

//===================================================================================================================
GROUP, "TaskbarControls", 
        __, I_BUTTON, "Refresh", W, 100, _, H, 25, _, N_LABEL, "::Images\\16x16\\Refresh.bmp", _, SHOW_NAMETIP, 
END_GROUP,
//---------------------
i, IN, "TaskbarPanel",
i, AT, _W2W, "MF", -40, _Y2Y, "MF", 0, 
i, X_GAP, 20, 
i, I_BUTTONS, text, _A1_, _X2X, text, _C1_, 30, label, _A1_, _X2X, label, _C1_, 5, END,
//===================================================================================================================


//===================================================================================================================
GROUP,"TaskbarTabs", 
        __, H_TAB, "Report", ON, H_TAB, "Options", 
END_GROUP,
//+------------------------------------------------------------------+
i, IN, "TaskbarPanel",
i, AT, LEFT_TOP, 0, 0, 
i, SWITCH, "Report", "Options", END,
i, TENURED,
i, H_TABS, 
        N_COLOR, (int)C'240,240,240', P_COLOR, (int)C'236,244,252', A_COLOR, (int)C'255,255,255', AP_COLOR, (int)C'205,245,255', AH_COLOR, (int)C'255,255,255', 
        NPG_LINES, 20, NPG_STEP, 1, NG_LINES, 20, NG_STEP, 1, 
        FRAME_TYPE, _dab,
END, 
"Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", "Balances", "Log", END, 
"Options", IS_APPEARANCE_CONTROLLER, "OptionsFrames", END, 
//=========================================================================================================================================


//===================================================================================================================
GROUP, "TabsFrame",
        __, V_BOX, "Tab", W, 1597, _, H, 610, _, N_FRAME, 1, _, A_FRAME, 1, _, NP_FRAME, 1, AP_FRAME, 1, 
END_GROUP,
//----------------------------
i, AT, _X2X, "MF", 0, _Y2H, "Report", -1, 
//===================================================================================================================


//===================================================================================================================
GROUP, "ReportFrames",
        __, V_BOX, "BalancesFrame", _, W, 1593, _, H, 85, 
        __, V_BOX, "LogFrame", _, W, 1593, _, H, 520, 
END_GROUP,
//-----------------------------
i, IN, "Tab",
i, AT, LEFT_TOP, 0, 0,
//===================================================================================================================


//===================================================================================================================
GROUP, "Balances", IS_TABLE, 
        __, T_HEADER, "Exchange", W, 100, C_HEADER, "$", W, 80, C_HEADER, "MX", W, 135, C_HEADER, "USDT", W, 115, C_HEADER, "USDC", W, 80, C_HEADER, "IRON", W, 105, 
        __, R_HEADER, "MEXC", CELL, A, V_CURRENT, 5625.59, CELL, A, V_CURRENT, 1198.10337776, CELL, A, V_CURRENT, 281.0668527, CELL, A, V_CURRENT, 12.6819, CELL, A, V_CURRENT, 2.79368472, 
        __, R_HEADER, "Bybit", CELL, A, V_CURRENT, 123.45, CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 123.45, CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 0, 
        __, R_HEADER, "Binance", CELL, A, V_CURRENT, 123.45, CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 123.45, CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 0, 
END_GROUP,
//-----------------------------
i, IN, "BalancesFrame",
i, AT, LEFT_TOP, 0, 0,
i, T_HEADERS, 
        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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, 
        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        N_FRAME_COLOR, (int)C'177,194,214', 
        text, _A1_, _X2X, 
        text, _C1_, 10, 
END,
//===================================================================================================================


//===================================================================================================================
GROUP, "Log", IS_TABLE, 
        __, C_HEADER, "Time", W, 170, C_HEADER, "Exch", W, 75, C_HEADER, "Op", W, 55, C_HEADER, "Message", W, 455, 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
        __, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
END_GROUP,
//-----------------------------
i, IN, "LogFrame",
i, AT, LEFT_TOP, 0, 0, 
i, C_HEADERS, 
        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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, 
        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        N_FRAME_COLOR, (int)C'177,194,214', 
        text, _A1_, _X2X, 
        text, _C1_, 10, 
END,
//===================================================================================================================


//===================================================================================================================
GROUP, "OptionsFrames",
END_GROUP,
//-----------------------------
i, IN, "Tab",
i, AT, LEFT_TOP, 0, 0,
//===================================================================================================================




END_WINDOW,

R etag Konow #: ci stiamo portando un po' avanti.

Solo a causa di sospetti bug.

 
Реter Konow #:
Tecnicamente, si possono fare altre opzioni per il posizionamento del testo e delle icone all'interno degli elementi, ma in pratica non hanno senso. Se si presenta la necessità, possiamo prenderle in considerazione.

Nel concetto attuale, se si desidera posizionare un'icona e un testo uno accanto all'altro, è necessario selezionare manualmente gli offset. Per ogni pulsante, poiché tutti hanno lunghezze di testo diverse. Questo è scomodo. Per semplificare, dovremo allineare al bordo sinistro.

Vorrei centrare automaticamente la catena icona-testo, selezionando facoltativamente la distanza tra loro. Per pulsanti della stessa larghezza, con testo di lunghezza diversa, questa è l'opzione migliore.

Ma naturalmente non è la priorità assoluta.

 
Edgar Akhmadeev #:

1. Se i pulsanti vengono inseriti nella cornice con il comando i, AT, LEFT_TOP, tutto va bene.

Se si posiziona all'estremità destra della barra delle applicazioni i, AT, _W2W, "MF", -40, _Y2Y, "MF", 0 - l'icona viene duplicata all'estremità sinistra della barra:

E quando si passa il mouse su un pulsante, la sua cornice viene disegnata anche all'estremità sinistra, chiudendo le schede, e il nome del pulsante viene rovinato:

Bug o mio FAIL - non capisco.

2. C'è una zona morta all'estremità destra della barra delle applicazioni. Nello screenshot si nota un artefatto. Tutte le dimensioni sono impostate correttamente. Ma devo essermi sbagliato da qualche parte nel codice.

3. Quando si cambia scheda, i comandi "Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", END non sono sufficienti. I riquadri vengono riaccesi, ma le tabelle in essi contenute no. Devo elencare esplicitamente i comandi "Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", "Balances", "Log", END.

Solo per il sospetto di bug.

Suggerisco questo codice:

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

//====================================================================================
//ГРУППЫ ВКЛАДОК ДОЛЖНЫ ОБЪЯВЛЯТЬСЯ НАД ЭЛЕМЕНТАМИ ЯВЛЕНИЕМ КОТОРЫХ УПРАВЛЯЮТ!
//+------------------------------------------------------------------+
GROUP,"TaskbarTabs", 

__, H_TAB, "Report",  ON, _,N_LABEL, "::Images\\16x16\\Briefcase.bmp",  

    H_TAB, "Options",     _,N_LABEL,  "::Images\\16x16\\Application.bmp",  
        
END_GROUP,
//+------------------------------------------------------------------+
//i, IN, "TaskbarPanel", ОШИБКА!!! ВКЛАДКИ НЕ МОГУТ НАХОДИТСЯ ВНУТРИ КАНВАСА КОТОРЫЙ ОБЪЯВЛЕН НИЖЕ ЧЕМ ОНИ САМИ.

//ВАРИАНТ ПОЗИЦИОНИРОВАНИЯ i, AT, LEFT_TOP, 0, 0, ПРЕДНАЗНАЧЕН ТОЛЬКО ДЛЯ ГРУПП ВНУТРИ КАНВАСОВ, КАК V_BOX. ВКЛАДКИ СТОЯТ НА MF.
//РАЗМЕРЫ МF РАССЧИТЫВАЮТСЯ В ПРОЦЕССЕ ПОСТРОЕНИЯ ОКНА. 
//НЕЛЬЗЯ ПРИВЯЗАТЬ ЭЛЕМЕНТЫ К ПРАВОМУ КРАЮ, ТАК КАК ПРАВЫЙ КРАЙ ОКНА ЗАВИСИТ ОТ РАЗМЕРОВ И РАСПОЛОЖЕНИЯ ЭЛЕМЕНТОВ ВНУТРИ НЕГО.
//+------------------------------------------------------------------+
i, AT, _X2X, "MF", 5, _Y2Y, "MF", 10,
//+------------------------------------------------------------------+
i, SWITCH, "Report", "Options", END,
//+------------------------------------------------------------------+

i, H_TABS, 
        N_COLOR, (int)C'240,240,240', P_COLOR, (int)C'236,244,252', A_COLOR, (int)C'255,255,255', AP_COLOR, (int)C'205,245,255', AH_COLOR, (int)C'255,255,255', 
        NPG_LINES, 20, NPG_STEP, 1, NG_LINES, 20, NG_STEP, 1, 
        FRAME_TYPE, _dab, 
        
        W, 80,  H,  25,//Задайте размер вкладок вручную.
END, 
//+------------------------------------------------------------------+
//ПЕРЕЧИСЛИТЕ ЯВЛЯЕМЫЕ ГРУППЫ ДЛЯ КАЖДОЙ ВКЛАДКИ:
//+------------------------------------------------------------------+
 "Report",  IS_APPEARANCE_CONTROLLER, "ReportFrames", "Balances", "Log","TaskbarControls",  END, 
//+------------------------------------------------------------------+
 "Options", IS_APPEARANCE_CONTROLLER, "OptionsFrames",  END, 
//+------------------------------------------------------------------+
//
//+------------------------------------------------------------------+
//ОБЪЯВЛЯЙТЕ ОДИН (!!!) V_BOX ДЛЯ КАЖДОЙ ГРУППЫ ВКЛАДОК.
//===================================================================================================================
GROUP, A,

__, V_BOX,"Canvas for TaskbarTabs", W, 1593, _, H, 605, 
        
END_GROUP,
//--------------------------------------
//РАСПОЛОЖИТЕ КАНВАС V_BOX ПРЯМО ПОД ВКЛАДКАМИ:
//--------------------------------------
i, AT, _X2X, "MF", 5, _Y2H, "Report", -2, 
//===================================================================================================================

GROUP, "TaskbarControls", 

__, I_BUTTON, "Refresh", W, 100, _, H, 25, _, N_LABEL, "::Images\\16x16\\Refresh.bmp",  
                                              //---------------------     
                                              _,R2R,    "Canvas for TaskbarTabs",  0, 
                                              _,ON_TOP, "Canvas for TaskbarTabs", -2,
                                              //---------------------
END_GROUP,
//---------------------
i, I_BUTTONS, text, _A1_, _X2X, text, _C1_, 30, label, _A1_, _X2X, label, _C1_, 5, SHOW_NAMETIP, END,
//===================================================================================================================

GROUP, "Balances", IS_TABLE, 

__, T_HEADER, "Exchange", W, 100, C_HEADER, "$", W, 80, C_HEADER, "MX", W, 135, C_HEADER, "USDT", W, 115, C_HEADER, "USDC", W, 80, C_HEADER, "IRON", W, 105, 

__, R_HEADER, "MEXC",    CELL, A, V_CURRENT, 5625.59, CELL, A, V_CURRENT, 1198.10337776, CELL, A, V_CURRENT, 281.0668527, CELL, A, V_CURRENT, 12.6819, CELL, A, V_CURRENT, 2.79368472, 
__, R_HEADER, "Bybit",   CELL, A, V_CURRENT, 123.45,  CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 123.45, CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 0, 
__, R_HEADER, "Binance", CELL, A, V_CURRENT, 123.45,  CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 123.45, CELL, A, V_CURRENT, 0, CELL, A, V_CURRENT, 0, 

END_GROUP,
//-----------------------------
i, IN, "Canvas for TaskbarTabs",
//-----------------------------
i, AT, LEFT_TOP, 5, 10,
//-----------------------------
i, T_HEADERS, 
        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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, 
        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        N_FRAME_COLOR, (int)C'177,194,214', 
        text, _A1_, _X2X, 
        text, _C1_, 10, 
END,
//-----------------------------

//===================================================================================================================
GROUP, "Log", IS_TABLE, 

__, T_HEADER,"TH1",      C_HEADER, "Time", W, 170, C_HEADER, "Exch", W, 75, C_HEADER, "Op", W, 55, C_HEADER, "Message", W, 455, 

__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 
__, R_HEADER,A, CELL, A, V_CURRENT, "2024.07.01 16:00:06", CELL, A, V_CURRENT, "Binance", CELL, A, V_CURRENT, "Conv", CELL, A, V_CURRENT, "BABYTRAMPTOKEN @0.0516400000 USDT >> 0.09968574 MX", 

END_GROUP,
//-----------------------------
i, IN, "Canvas for TaskbarTabs",
//-----------------------------
"TH1", L2L,       "Binance",  0,

"TH1", ON_BOTTOM, "Binance",  10,                                            
//-----------------------------
i, T_HEADERS, text, IS_HIDDEN, W, 1, END,   
//-----------------------------
i, R_HEADERS, text, IS_HIDDEN, W, 1, END,
//-----------------------------
i, C_HEADERS, 

        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        TEXT_STYLE, (int)FW_BOLD, 
        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, 

        TEXT_FONT, "Calibri", 
        FONT_SIZE, 10, 
        N_FRAME_COLOR, (int)C'177,194,214', 
        text, _A1_, _X2X, 
        text, _C1_, 10, 
END,
//-----------------------------

//===================================================================================================================
GROUP, "OptionsFrames",


END_GROUP,
//-----------------------------
i, IN, "Canvas for TaskbarTabs",
i, AT, LEFT_TOP, 0, 0,
//===================================================================================================================


Risultato:


 

Nelle tabelle che visualizzano valori, è necessario dichiarare gli elementi R_HEADER e T_HEADER, perché la denominazione e il collegamento delle celle avviene specificando R_HEADER e C_HEADER e combinandoli tra loro. È così che appare l'"indirizzo" di una cella nella tabella. T_HEADER è necessario per impostare molte proprietà della tabella.

Se interferiscono con l'aspetto, possono essere nascosti come ho fatto sopra.

 
Edgar Akhmadeev #:

1. Se i pulsanti vengono inseriti nella cornice con il comando i, AT, LEFT_TOP, tutto va bene.

Se si posiziona all'estremità destra della barra delle applicazioni i, AT, _W2W, "MF", -40, _Y2Y, "MF", 0 - l'icona viene duplicata all'estremità sinistra della barra:

E quando si passa il mouse su un pulsante, la sua cornice viene disegnata anche all'estremità sinistra, chiudendo le schede, e il nome del pulsante viene rovinato:

Bug o mio FAIL - non capisco.

2. C'è una zona morta all'estremità destra della barra delle applicazioni. Nello screenshot si nota un artefatto. Tutte le dimensioni sono impostate correttamente. Ma devo essermi sbagliato da qualche parte nel codice.

3. Quando si cambia scheda, i comandi "Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", END non sono sufficienti. I riquadri vengono riaccesi, ma le tabelle in essi contenute no. Devo elencare esplicitamente i comandi "Report", IS_APPEARANCE_CONTROLLER, "ReportFrames", "Balances", "Log", END.

Solo per il sospetto di bug.

1. Esiste un sistema di posizionamento diverso all'interno delle tele. Preparerò del materiale dettagliato su questo argomento. Inoltre non è possibile utilizzare lo snap al bordo destro della finestra, perché la dimensione della finestra dipende dalla dimensione del contenuto.

2. Ci può essere un solo elemento V_BOX per gruppo di schede e il suo gruppo deve essere dichiarato INFERIORE al gruppo di schede.

3. Attualmente, le dimensioni delle schede vengono impostate manualmente, specificandole esplicitamente. Le icone vengono impostate come di consueto.

4. Per risparmiare risorse quando si ridisegna l'area di disegno, ho rimosso il pulsante Aggiorna in alto, altrimenti l'area di disegno diventa MOLTO lunga e il ridisegno richiede molte più risorse. Inoltre il pulsante può essere posizionato da qualche parte vicino alle tabelle.

 
Penso che dovremmo fermarci per ora, stiamo andando troppo avanti. E dobbiamo lavorare sull'aggiornamento.))
 
Edgar Akhmadeev #:

Nel concetto attuale, se si desidera posizionare un'icona e un testo uno accanto all'altro, è necessario regolare manualmente gli offset. Per ogni pulsante, perché tutti hanno lunghezze di testo diverse. Questo è scomodo. Per semplificare, dovremo allineare al bordo sinistro.

Vorrei centrare automaticamente la catena icona-testo, selezionando facoltativamente la distanza tra loro. Per pulsanti della stessa larghezza con testo di lunghezza diversa, questa è l'opzione migliore.

Ma naturalmente non è la priorità assoluta.

Questo si realizza nelle caselle di controllo e nei pulsanti di opzione.

La soluzione serve ad ampliare le possibilità decorative. Poiché l'aspetto di pulsanti e schede lascia spesso spazio alla fantasia, ho deciso di non creare un vincolo rigido di testo e icone. Ieri ho passato un modello adatto a TUTTI gli elementi con testi e icone. Basta copiare e modificare le modifiche se necessario.
 
Abbiamo intenzione di creare un "modello-base" che includa la "colorazione" degli elementi, le strutture delle finestre, i gruppi (ad esempio le schede) e diverse varianti di tabelle. L'utente sceglierà un'immagine e copierà il codice, apporterà le modifiche e il gioco è fatto. Molto comodo. E veloce.
 
Ho anche intenzione di unificare i sistemi di posizionamento. Ce ne sono troppi e funzionano in modo diverso. Li semplificherò al massimo.