Botões e campos de texto no gráfico mt4 agora possível - página 4

 

Tentei tbIsChecked mas não funciona. Eu tenho 2 caixas de seleção. Eu gostaria de desmarcar DayTradechk se SwingTradechk for verificado e vice-versa.

if(tbIsChecked(SwingTradechk)) {tbSetChecked(DayTradechk, false);}
else {tbSetChecked(SwingTradechk, false);}

Qual é o problema no meu código?

[Excluído]  

Bom Afton Não entendo nada sobre programação. Alguém pode me explicar como fazer os botões e campos de texto no gráfico mt4 passo a passo possível?

Obrigado de antemão

 
Fantasma: este bug foi corrigido na mais nova versão do mt4gui ainda. atualizarei o site amanhã com ele. o mais novo mt4gui tem várias diferenças que tenho que explicar aqui.
 

Aqui está uma atualização sobre a mais nova versão 0.1.08 (que é a v0.8):

As principais mudanças são que a definição das funções foi ampliada por hwnd como primeiro parâmetro, as cores são suportadas com todos os objetos (texto, etiqueta, botão, caixa de seleção, lista). Também o bug tbSetChecked foi resolvido. Devido a muitas perguntas, incluímos todos os arquivos de amostra e suas dependências (libtrade.mqh e libvisual.mqh) no arquivo .zip.

Aqui está a última definição:

#import "mt4gui.dll"   
   string tbVersion();       
   
   // objects "button","checkbox","list","label","text"
   int tbPutObject(int,string,int,int,int,int,string); // hwnd,type,x,y,w,h,label   
   
   // colors
   int tbSetBgColor(int,int,int); // hwnd,object,bgcolor
   int tbSetTextColor(int,int,int); // hwnd,object,color
   
   // removing objects
   int tbRemove(int,int);  // hwnd,handle
   int tbRemoveAll(int); // hwnd
   
   // events
   bool tbIsClicked( int,int ); // hwnd,object
   bool tbIsChecked(int,int); // hwnd,object
   // properties
   int tbSetText(int,int,string,int,string); // hwnd,object,text,fontsize,fontname   
   string tbGetText(int,int); // hwnd,object   
   int tbSetChecked(int,int,bool); // hwnd,object,true|false      
   int tbEnable(int,int,int); // hwnd, object, 0|1   
   
   // listbox 
   int tbAddListItem(int,int,string); // hwnd,object,item
   int tbGetListSel(int,int); // hwnd,object
   int tbSetListSel(int,int,int); // hwnd,object,index
   
#import

também a função tbPutObject foi descrita em detalhes dentro do wiki http://www.fx1.net/wiki/pmwiki.php/MT4GUI/MT4GUI
 

fx1.net:

- tbSetChecked não funciona, não consigo definir o status da caixa de seleção para verificar na função init

- como posso detectar se um objeto existe ou não? Eu gostaria de adicionar os comércios ativos ao gráfico como caixas de seleção, mas não quero criar os objetos repetidamente.

 
#import "mt4gui.dll"   
   string tbVersion();       
   
   // objects "button","checkbox","list","label","text"
   int tbPutObject(int,string,int,int,int,int,string); // hwnd,type,x,y,w,h,label   
   
   // colors
   int tbSetBgColor(int,int,int); // hwnd,object,bgcolor
   int tbSetTextColor(int,int,int); // hwnd,object,color
   
   // removing objects
   int tbRemove(int,int);  // hwnd,handle
   int tbRemoveAll(int); // hwnd
   
   // events
   bool tbIsClicked( int,int ); // hwnd,object
   bool tbIsChecked(int,int); // hwnd,object
   // properties
   int tbSetText(int,int,string,int,string); // hwnd,object,text,fontsize,fontname   
   string tbGetText(int,int); // hwnd,object   
   int tbSetChecked(int,int,int); // hwnd,object,0|1
   int tbEnable(int,int,int); // hwnd, object, 0|1   
   
   // listbox 
   int tbAddListItem(int,int,string); // hwnd,object,item
   int tbGetListSel(int,int); // hwnd,object
   int tbSetListSel(int,int,int); // hwnd,object,index
   


   // obj management
   int tbSetName(int,int,string); // hwnd,object,name
   string tbGetName(int,int); // hwnd,object
   int tbGetObjectsCount(int); // hwnd
   int tbGetByNum(int,int); // hwnd,pos
   int tbGetType(int,int); // hwnd,obj
   int tbGetByName(int,string); // hwnd,name
   
#import
Esta é uma nova definição. A versão atual no servidor já suporta isso. Ver funções de gerenciamento de obj. tbSetChecked foi atualizado para ser int,int,int e o terceiro parâmetro 0|1 define o estado de verificação.
 

Olá,

Onde posso encontrar a construção mais recente? Somente a versão 0.1.08 está disponível em sua página inicial.

 
fx1.net:
Esta é uma nova definição. A versão atual no servidor já suporta isso. Veja as funções de gerenciamento de obj. tbSetChecked foi atualizado para ser int,int,int e o terceiro parâmetro 0|1 define o estado de verificação.


Usando seus botões, incrível complemento para o MT4.

Quanto à definição das cores, noto que os botões são obrigatoriamente retangulares, com janelas clássicas sombreadas/fronteiras.

Será possível no futuro mudar essas cores de borda. Eu tenho botões com imagens como "fonte" que são redondas, e gostaria de tornar invisível o botão "atrás dele". Ser capaz de definir a tbBGColor é útil, mas se for possível também definir as bordas tbBorderShadowColor e tbBorderHighlightColor,

ou talvez uma bandeira para ativar/desativar o aspecto "3D" da borda (ou seja, para fazer um botão plano sem bordas visíveis, como mencionei, usando apenas o texto/símbolo da fonte como o componente clicável.

Mais uma vez, obrigado por seu trabalho. Você disse que está criando isto em C++? Quem me dera saber bem o suficiente para codificar.

Jim Bentz.

 

sim, tal código só é possível em linguagem de codificação de baixo nível como c++ e o bom e velho mfc. nós continuamos desenvolvendo neste projeto, eu não coloco tudo aqui.

tx para todos

[Excluído]  
Hi,

como você faz Listar menu? (Tela em 21.05.2011 16:15 este tópico)

Como é a utilização da função:


string tbAddListItem(int hwnd,int objeto,item string)
tbGetListSel(int hwnd,int objeto)
tbSetListSel(int hwnd,int object,int index)
Funções relacionadas a objetos da Listbox ("lista")

algum exemplo, por favor? Obrigado.