controlar widget desde un widget central



  • hola amigo quisiera saber como puedo controlar un plain text edith que esta en un widget, para lo cual deseo que se cambie la fuente, el color, el tamaño, etc pero desde un widget central o principal


  • Moderators

    Hola

    Pásale a tu widget central un puntero al QPlainTextEdit y así podrás acceder a el, o, conéctalos mediante señales/slots.

    Un saludo



  • quisiera conectarlos con señales/slots, pero no se como hacerlo seria mas especifico por favor, un un e
    jemplo


  • Moderators

    Hola

    Ejemplos de señales hay muchos en la documentación, por ejemplo:
    http://doc.qt.io/qt-5/qobject.html#connect

    Cualquier clase dispone de varias señales/slots, por ejemplo, el QPlainTextEdit que quieres usar tiene bastantes:
    http://doc.qt.io/qt-5/qplaintextedit.html

    A parte puedes crearte tus propias señales y slots. Dale un vistazo a la documentación y verás como te queda más claro, si te surgen dudas concretas pregúntalas y a ver si tengo un poco de tiempo y te pongo un ejemplo.

    Un saludo



  • Gracias amigo, te agradecería bastante un ejemplo, gracias nuevamente


  • Moderators

    Hola @ROBINSON

    ¿Qué es lo que quieres hacer o lo que no te sale? Para hacer las conexiones puedes usar la función connect que te puse antes, o puedes hacerlo de "forma visual" desde QtCreator: cuando estás diseñando tu ventana, arriba hay unos botones, en la pequeña barra de herramientas, el segundo pone "Edit Signals/Slots" o pulsa F4.

    Ahora puedes arrastrar desde un componente a otro, te saldrá una flecha que unirá los dos componentes que quieres conectar, después te sale una ventana en la que tienes que escoger la señal y el slots que quieres conectar y listo.

    Otra forma es pulsar el botón derecho sobre un elemento de tu ventana (en modo de edición normal) y escoges el menú "Go to slots...", igual, se te abrirá una ventana para que escojas la señal que qieras y Qt te creará un método en tu archivo .cpp en el que escribir el código para cuando se dispare esa señal.

    Luego puedes crear tus propias señales y emitirlas cuando quieras. Acláranos un poco más lo que quieres/no sabes hacer.

    Un saludo



  • haber le explico con imagenes mejor:
    0_1547387498932_1.png
    en la imagen se puede observar que se pueden abrir varias ventanas que estan contenidas en un qmdiarea.

    lo que deseo es controlar las imagenes como se muestra.
    0_1547387624684_2.png
    Con dichos botenes marcados deseo controlar el el grafico (poder guardar, cambiar color, y otras cosas mas), poder controlar a la ventana que esta activa.


  • Moderators

    Hola @ROBINSON

    Tú quieres que al pulsar uno de esos botones, se actualice de alguna manera el gráfico.

    Pues no sé, si el componente o widget que has usado para representar el gráfico no tiene un slots para hacer lo que quieres, por ejemplo, cambiar el color, tendrás que crearte un slots en el que programes todo el código necesario para actualizar el gráfico.

    como te dije, si pulsas botón derecho del ratón sobre el botón y escoges la opción "Go to slots..." el propio QtCrator te crea el slots y tan solo tienes que programar ahí lo que quieras.

    Un saludo


Log in to reply