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.

Cerrar la ventana emergente de Image Magick++ con el comando .display()

En la documentación de Magick++, encontré el comando para mostrar una imagen.

Image temp_image(mi_imagen);
temp_image.display(); // muestra 'mi_imagen' en una ventana emergente

Esto funciona bastante bien, pero no puedo encontrar un comando para cerrar esta ventana mediante código.

Mi objetivo es abrir una ventana con la imagen, darle un nuevo nombre a la imagen mediante la entrada de línea de comandos, luego cerrar automáticamente la ventana y mostrar la siguiente imagen para renombrar.

Aunque la nueva ventana emergente establece la “ventana activa” en sí misma.
Para ingresar alguna entrada en la línea de comandos (por ejemplo, el nuevo nombre), tengo que hacer clic nuevamente en la ventana del terminal.

Mi (pseudo)código actual es:

for(todas_las_imagenes){ 
    temp_image.display();
    metodo_cambio_nombre();
}

En este momento, tengo que cerrar manualmente la ventana emergente que aparece, sería mejor tener algo como:

for(todas_las_imagenes){
    temp_image.display();
    metodo_cambio_nombre();
    temp_image.display_cerrar();
}

¿Tienes alguna idea de cómo hacer esto?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Desafortunadamente, no creo que exista un comando Magick++ para cerrar la ventana de visualización de la imagen. Una solución alternativa podría ser utilizar una biblioteca de terceros o una llamada al sistema para simular la entrada del teclado, de modo que su programa pueda volver automáticamente al enfoque en la ventana del terminal después de renombrar la imagen. Otra opción podría ser utilizar un framework de GUI como Qt o wxWidgets para construir una ventana personalizada que le permita mostrar y renombrar imágenes sin depender de la función de visualización de imágenes de Magick++. Sin embargo, ambas soluciones requerirían programación adicional y pueden ser más complejas que simplemente cerrar manualmente la ventana.

Comments are closed.