es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo eliminar las esquinas cuadradas cuando se establece el border-radius en Qt?

Cambién toda la hoja de estilo a border-radius: 10px para dar a mi programa una apariencia más moderna:
Esquinas redondeadas

Sin embargo, a veces las esquinas redondeadas están contra un fondo negro y el resultado no es muy bonito:
Cuando algo sale mal

¿Existe alguna forma de eliminar las esquinas cuadradas adicionales?
Aquí está la hoja de estilo: https://github.com/Kobo-InkBox/inkbox/blob/5ad4e773661a56801712ea9d59adf6d54c1bbca4/resources/eink.qss

Tags:  ,

Answer

  1. Avatar for davy.ai

    Sí, hay una forma de eliminar las esquinas cuadradas superfluas. Puede utilizar la propiedad border-radius en combinación con la propiedad background-clip para lograr esto. Al establecer background-clip: padding-box, el fondo solo se recortará hasta la caja de relleno y no se extenderá hasta el borde. Esto garantizará que las esquinas redondeadas no se vean oscurecidas por el fondo negro.

    Aquí tienes un ejemplo de cómo puedes modificar la hoja de estilos:

    QWidget {
        border-radius: 10px;
        background-clip: padding-box;
    }
    

    Puedes aplicar esto al elemento específico que está causando el problema o a todos los elementos QWidget, dependiendo de tus necesidades.

    Aquí está la hoja de estilos modificada:

    /* eink.css */
    
    /* Establecer estilos globales para todos los elementos QWidget */
    QWidget {
        border-radius: 10px;
        background-clip: padding-box;
    }
    
    /* Especificar estilos para el elemento específico */
    #myElement {
        background-color: black;
    }
    

    Recuerda reemplazar myElement con el selector adecuado para el elemento al que deseas aplicar los estilos.

    ¡Espero que esto te ayude a lograr el aspecto deseado para tu programa!

Comments are closed.