Discusión sobre el artículo "Interfaces gráficas III: Grupos de botones simples y multifuncionales (Capítulo 2)"
Al compilar el archivo SplitButton.mqh, aparece el error "'return' - cannot convert from const pointer to non-const pointer SplitButton.mqh 90 65".
Sí, este error apareció después de la última actualización del terminal. Las reglas del "juego" han cambiado un poco. Puedes solucionarlo simplemente borrando el especificador const.
Ve a la línea con el error y reemplaza esta línea
CContextMenu *GetContextMenuPointer(void) const { return(::GetPointer(m_drop_menu)); }
Por esta otra:
CContextMenu *GetContextMenuPointer(void) { return(::GetPointer(m_drop_menu)); }
//---
Tendrás que hacer correcciones similares en todos los archivos en los que se produzca este error. En los próximos artículos de la serie se corregirá el error.
Gracias por publicar.
Nuevo artículo Interfaces gráficas III: Grupos de botones simples y multifuncionales (Capítulo 2) ha sido publicado:
Autor: Anatoli Kazharski
¡Gran trabajo !
Pero: cuando intento usar el Panel como Indicador en MT4 (!) , cada click en un "Botón Icono" resulta en una impresión doble de tu
::Print(__FUNCTION__," > id: ",id,"; lparam: ",lparam,"; dparam: ",dparam,"; sparam: ",sparam);
Así que cada acción de clic como un incremento o algo más se hará dos veces :(
¿Hay alguna manera de solucionarlo?
P.S. lo curioso es, que todo funciona bien en MT5. Sólo MT4 tiene este problema cuando se utiliza como indicador. Como Experto también funciona bien.
...
¿Hay alguna manera de arreglarlo ?
P.S. lo curioso es, que todo funciona bien en MT5. Sólo MT4 tiene este problema cuando se utiliza como indicador. Como Experto también funciona bien.
Hola,
He hecho un quick'n'dirty solución que funciona para mí muy bien. Mi manera era comprobar el botón izquierdo pulsado bit separado al principio en OnEvent y si se establece escribir un bool true en un helper. Después de que el regular si statemenet ampliado con helper == true , y el establecimiento dentro de la si sólo restablecer el helper. Funciona casi perfecto. En algunos casos a los clics rápidos no se mencionan, pero mejor clic más lento, excepto tener resultados dobles :)
BTW: sería bueno, si alguien pudiera actualizar todas sus bibliotecas actuales al Inglés. Su más reciente por ejemplo, el artículo 05 y así sucesivamente son sólo en ruso.
Hola,
Tengo una pregunta,
¿cómo se hace para que la parte negra alrededor de los iconos sea transparente?
thk
Hola.
Acabo de descargar los archivos del artículo3
Cuando lo he compilado.. Me da el siguiente error
CContextMenu *GetContextMenuPointer(void) const { return(::GetPointer(m_drop_menu));
Archivo = splitButton.mqh.
¿Alguien sabe cómo solucionarlo?
Estoy intentando crear un simple Botón.
gracias
Gracias
Borrar "const" está bien
CContextMenu *GetContextMenuPointer(void) { return(::GetPointer(m_drop_menu));

- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
Artículo publicado Interfaces gráficas III: Grupos de botones simples y multifuncionales (Capítulo 2):
El primer capítulo de la tercera pare de la serie estaba dedicada a los botones simples y multifuncionales. En el segundo capítulo hablaremos de los grupos de botones interconectados que permiten crear los controles, cuando el usuario puede elegir una opción de un determinado conjunto (grupo).
Creamos el archivo RadioButtons.mqh con la clase CRadioButtons, que debe contener los métodos virtuales estándar y los miembros de la clase para guardar y obtener el puntero al formulario. Puede ver los ejemplos en las clase de otros controles más arriba. Incluimos el archivo RadioButtons.mqh en la librería (WndContainer.mqh).
Cada botón de opción va a componerse de tres objetos primitivos:
Fig. 3. Partes integrantes de los botones de opción.
Autor: Anatoli Kazharski