Salve galera!
Venho aqui com outra duvida...
Estou desenvolvendo um EA que analisa determinadas condições dos ativos que estão selecionados na janela de "Observações de Mercado" e são exibidas em um painel
Porém na tela cabem 25 ativos para que fique bem esteticamente, acima desse número começa a "estragar" o visual >>>> vejam a imagem "acima de 25 ativos"
No caso eu preciso criar uma "paginação" desses ativos de 25 em 25, através do texto em amarelo no rodapé já criado como pode se ver na imagem "25 ativos"
Ah e se alguem tambem puder dar uma dica de o por que a lista de ativos da tabela demora para carregar (cerca de 30 segundos ou mais) e por que quando removo da lista de EA ele não desaparece, agradeço tambem...
Segue o codigo simplificado com apenas a parte funcional da tabela e fundo para facilitar
![Graphical Interfaces XI: Text edit boxes and Combo boxes in table cells (build 15) Graphical Interfaces XI: Text edit boxes and Combo boxes in table cells (build 15)](https://c.mql5.com/36/78/graphical-interfaces-xi-text-edit.jpg)
- www.mql5.com
Não é bem assim a forma. Tu vai criar os 25 que cabem fixo e se tiver menos tu popula com algo invisivel que não aparece na tela. Quanto tem mais de 25 tu vai ter que ter um botão pra fazer esse controle de mais ou menos, tu tambem poderia pensar em trabalhar com abas sempre visiveis. Tem excelentes artigos aqui no site sobre interface que dão ideias próximas. Tem até uns explicando como usar tabelas em janelas, veja: https://www.mql5.com/pt/articles/3394
Essa de abas é interessante hein??? Vou dar uma olhada pra ver o que acho..
Obrigado pela ajuda!
Não é bem assim a forma. Tu vai criar os 25 que cabem fixo e se tiver menos tu popula com algo invisivel que não aparece na tela. Quanto tem mais de 25 tu vai ter que ter um botão pra fazer esse controle de mais ou menos, tu tambem poderia pensar em trabalhar com abas sempre visiveis. Tem excelentes artigos aqui no site sobre interface que dão ideias próximas. Tem até uns explicando como usar tabelas em janelas, veja: https://www.mql5.com/pt/articles/339
Ricardo obrigado pelo pontapé inicial! Achei algumas coisas e ontem consegui fazer as paginas!
Nada como umas variaveis no escopo global, um loop para popular as etiquetas/tabela e uma funcao em onchartevent e pronto tabela funcionando! ver arquivo "tabela finalizando.jpg"
ainda falta uns toques mas está bem adiantado!
Agora vou abrir um topico para descobrir o por que está lento para inicializar e trocar de paginas que não consegui descobrir...
Muito obrigado
Deus abençoe!!
ESCOPO GLOBAL //variaveis para paginas de ativos exibidos e create label int currentPage = 0; // Current page index int totalSymbols_Var = SymbolsTotal(true); int symbolsPerPage = 25; // Number of symbols displayed per page int totalPages = (totalSymbols_Var + symbolsPerPage - 1) / symbolsPerPage; FUNÇÃO EXIBIR ATIVOS void ExibirInstrumentosAtivos() { int totalSymbols = SymbolsTotal(true); int startIndex = currentPage * symbolsPerPage; int endIndex = MathMin(startIndex + symbolsPerPage, totalSymbols); ArrayResize(symbolName, endIndex - startIndex); for (int i = startIndex; i < endIndex; i++) { symbolName[i - startIndex] = SymbolName(i, true); } } FUNÇÃO EM ONCHARTEVENT if (id == CHARTEVENT_OBJECT_CLICK) { if (sparam == "PreviousPage" ) { if (currentPage > 0) { currentPage--; ExibirInstrumentosAtivos(); ObjectsDeleteAll(0,index_tf1,0,OBJ_LABEL); ObjectsDeleteAll(0,index_tf2,0,OBJ_LABEL); ObjectsDeleteAll(0,index_tf3,0,OBJ_LABEL); ObjectsDeleteAll(0, "PageInfoLabel", 0, OBJ_LABEL); CreateLabels(); //Print("Pagina : ",currentPage," de: ",totalPages); } } else if (sparam == "NextPage") { if (currentPage < totalPages - 1) { currentPage++; ExibirInstrumentosAtivos(); ObjectsDeleteAll(0,index_tf1,0,OBJ_LABEL); ObjectsDeleteAll(0,index_tf2,0,OBJ_LABEL); ObjectsDeleteAll(0,index_tf3,0,OBJ_LABEL); ObjectsDeleteAll(0, "PageInfoLabel", 0, OBJ_LABEL); CreateLabels(); } } } }
Ricardo obrigado pelo pontapé inicial! Achei algumas coisas e ontem consegui fazer as paginas!
Nada como umas variaveis no escopo global, um loop para popular as etiquetas/tabela e uma funcao em onchartevent e pronto tabela funcionando! ver arquivo "tabela finalizando.jpg"
ainda falta uns toques mas está bem adiantado!
Agora vou abrir um topico para descobrir o por que está lento para inicializar e trocar de paginas que não consegui descobrir...
Muito obrigado
Deus abençoe!!
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Salve galera!
Venho aqui com outra duvida...
Estou desenvolvendo um EA que analisa determinadas condições dos ativos que estão selecionados na janela de "Observações de Mercado" e são exibidas em um painel
Porém na tela cabem 25 ativos para que fique bem esteticamente, acima desse número começa a "estragar" o visual >>>> vejam a imagem "acima de 25 ativos"
No caso eu preciso criar uma "paginação" desses ativos de 25 em 25, através do texto em amarelo no rodapé já criado como pode se ver na imagem "25 ativos"
Ah e se alguem tambem puder dar uma dica de o por que a lista de ativos da tabela demora para carregar (cerca de 30 segundos ou mais) e por que quando removo da lista de EA ele não desaparece, agradeço tambem...
Segue o codigo simplificado com apenas a parte funcional da tabela e fundo para facilitar