Discusión sobre el artículo "Interfaces gráficas XI: Controles dibujados (build 14.2)" - página 2
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Y otra pregunta al mismo tiempo: al dibujar una etiqueta de texto (CTextLabel) sobre el fondo de una ventana que tiene alguna transparencia, las etiquetas se dibujan sobre su fondo opaco, que no reacciona al método Alpha(), y no queda bien... ¿Es posible hacer que el fondo de las etiquetas también tenga transparencia?
Del artículo:
"La transparencia en esta versión sólo se aplica al relleno del fondo y al marco. El texto y las imágenes permanecerán completamente opacos y nítidos en cualquier valor de canal alfa establecido."
Hola. Tol, no he encontrado nada en los ejemplos de cómo puedo dibujar una línea divisoria en la ventana ahora.
¿Qué significa índice?
¿Qué parámetro de índice, índice de qué, se debe pasar allí?
Y otra pregunta al mismo tiempo: al dibujar una etiqueta de texto (CTextLabel) sobre el fondo de una ventana que tiene alguna transparencia, las etiquetas se dibujan sobre su fondo opaco, que no responde al método Alpha(), y no se ve bien ..... ¿Es posible hacer que el fondo de las etiquetas también tenga transparencia?
El parámetro con el índice no debería estar ahí. Se me olvidó quitarlo. Ahora se puede pasar cualquier valor allí. Quitaré este parámetro en una de las próximas actualizaciones.
Ejemplo:
//---
...
Y otra pregunta al mismo tiempo: al dibujar una etiqueta de texto (CTextLabel) sobre el fondo de una ventana que tiene alguna transparencia, las etiquetas se dibujan sobre su propio fondo opaco, que no reacciona al método Alpha(), y no se ve bien ..... ¿Es posible hacer que el fondo de las etiquetas también tenga transparencia?
Ahora se puede configurar manualmente la transparencia de cada elemento. En el siguiente ejemplo, el fondo de la ventana está configurado con el canal alfa 200. El fondo de la etiqueta de texto se establece en 0.
//---
Ejemplo:
Del artículo:
"La transparencia en esta versión sólo se aplica al relleno de fondo y al borde. El texto y las imágenes permanecerán completamente opacos y nítidos en cualquier ajuste del canal alfa".
Esta es la regla para todos los elementos de la biblioteca. Es decir, el canal alfa se puede establecer para cada elemento por separado.
Gracias por la aclaración. Una pregunta más:
¿En qué sistema de coordenadas se devuelven las coordenadas de los objetos?
Por ejemplo, si tomo la coordenada del borde derecho del botón m_button_text.X2(), ¿en qué sistema de coordenadas se devuelve la coordenada del botón? ¿En la ventana del formulario o en la ventana del gráfico?
Este es mi punto: Estoy construyendo objetos en una ventana de formulario. Si los botones son consecutivos uno tras otro, tomo la coordenada X() del segundo botón como la coordenada X2()+2 del primer botón. La coordenada X() del tercer botón es la coordenada X2()+2 del segundo botón, y así sucesivamente ... .
Todo va bien mientras el panel esté en la coordenada 0 del gráfico de símbolos. Si lo mueves a la derecha y cambias el TF, los botones se mueven a la derecha. Y cuanto más alejada esté la ventana del borde izquierdo del gráfico, más se alejan los botones entre sí.
¿Cómo establezco las coordenadas de cada botón para que no se muevan por la pantalla al mover la ventana-formulario a un nuevo lugar y luego cambiar la TF?
Gracias por la aclaración. Una pregunta más:
...
Se devuelven coordenadas absolutas. Necesito convertirlas en coordenadas relativas. Relativas al elemento al que está unido el elemento a crear.
Si el elemento principal es un formulario, entonces:
//---
Se devuelven coordenadas absolutas. Deben convertirse en coordenadas relativas. Relativas al elemento al que está unido el elemento a crear.
Si el elemento principal es un formulario, entonces:
//---
Se devuelven coordenadas absolutas. Deben convertirse en coordenadas relativas. Relativas al elemento al que está unido el elemento a crear.
Si el elemento principal es un formulario, entonces:
//---
Extraño. Cuando paso la coordenada calculada por este método al método de construcción del objeto, todo va bien....
Pero si paso sólo la coordenada calculada al método:
... y luego en el método inmediatamente resto el valor de m_window.X() de la coordenada pasada, todo flota.... Aunque ¿qué más da dónde restarlo? Inmediatamente, o ya en el método build....
A lo mejor me he comido algo, pero no entiendo por qué es así?
Si escribes una línea en Program.mqh en TestLibrary14 - cambio del color del título de la ventana:
Entonces minimizar la ventana devuelve el color al valor por defecto. Y los botones de información sobre herramientas, minimizar/desmodificar y cerrar se repintan en el color del título de la ventana que se estableció mediante programación. Y entonces el color de estos botones cambia al color por defecto sólo cuando se pasa el cursor por encima.
Por cierto, ¿es posible hacer que el fondo de estos botones sea transparente? Por ejemplo, la cabecera de la ventana es gris, pero los botones son azules....
Tol, ¿en cuál de los artículos de esta serie puedes leer sobre las CKeys ?
A veces, al introducir NÚMEROS en el campo de entrada, se introducen los caracteres de estas teclas numéricas, que están en la tecla+Shift. Por ejemplo, introduzco 2, pero @ se introduce ....
En algunas situaciones -no entiendo cuáles (probablemente depende del número y tipo de controles en la ventana del formulario), pulsar la tecla Retroceso hace que los controles se eliminen de la ventana del formulario en el orden inverso a su adición. No entiendo por qué se considera que pulsar Retroceso no es un carácter de control para el campo de entrada cuando el cursor está en él, sino una orden para eliminar los controles de la ventana del formulario. Es decir: inicio el programa y empiezo a pulsar Retroceso - todos los controles se borran con cada pulsación de Retroceso, empezando por el último añadido. Finalmente, la ventana-formulario ya vacía se borra también.
¿Es posible desactivar la reacción a Retroceso mientras el cursor no está en el campo de entrada?
...
Por cierto, ¿es posible hacer que el fondo de estos botones sea transparente? Por ejemplo, el título de la ventana es gris, pero los botones son azules....
Utiliza métodos para obtener punteros de elementos compuestos. La misma regla se aplica a todos los elementos.