Pagina 1 di 1

[C] Programma c che visualizza immagini...

Inviato: sabato 4 ottobre 2008, 19:49
da 7cys7
Salve, ho realizzato un programma che alla fine della sua esecuzione presenta la lista di una serie di immagini. Se volessi che il mio programma me le visualizzasse, come potrei fare? Mi servirebbe gtk? E se sì, sapete indicarmi qualche semplice esempio?

Grazie! :(

Re: [C] Programma c che visualizza immagini...

Inviato: domenica 5 ottobre 2008, 0:12
da 7cys7
Per visualizzare una singola immagine con gtk:

Codice: Seleziona tutto

#include <gtk/gtk.h>   
int main( int argc, char *argv[]) {    
GtkWidget *window;   GtkWidget *image;    
gtk_init(&argc, &argv);    
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);   
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);   
gtk_window_set_default_size(GTK_WINDOW(window), 230, 150);   
gtk_window_set_title(GTK_WINDOW(window), "immagine");   
gtk_window_set_resizable(GTK_WINDOW(window), FALSE);    
gtk_container_set_border_width(GTK_CONTAINER(window), 2);    
image = gtk_image_new_from_file("immagine.png");   
gtk_container_add(GTK_CONTAINER(window), image);     
g_signal_connect_swapped(G_OBJECT(window), "destroy",         
G_CALLBACK(gtk_main_quit), G_OBJECT(window));    
gtk_widget_show_all(window);    
gtk_main();    
return 0; 
} 
Ma se volessi visualizzarne 10 nella stessa finestra?
E come dovrei fare per integrare le gtk al vecchio programma c? >:(


Qualche anima pratica di GUI c'è?

Re: [C] Programma c che visualizza immagini...

Inviato: domenica 5 ottobre 2008, 11:53
da IacopoDeeNosee
7cys7 ha scritto: Ma se volessi visualizzarne 10 nella stessa finestra?
per inserire 10 immagini nella stessa finestra devi dividere la finestra in 10 aree,e per farlo hai diversi strumenti a disposizione,qui ne trovi un elenco:
http://library.gnome.org/devel/gtk/stab ... iners.html
la cosa più semplice è usare i gtktable,per schiarirti le idee butta un occhio su questo tutorial:
http://www.avv-delongis.com/tutorial/tut5.htm
E come dovrei fare per integrare le gtk al vecchio programma c? >:(
non capisco cosa vuoi intendere per integrare ???
BYE :)

Re: [C] Programma c che visualizza immagini...

Inviato: domenica 5 ottobre 2008, 12:52
da 7cys7
No, no, il problema è associare un'azione a ciascun bottone. La disposizione non è un problema.
Ho già del codice c compilato e funzionante. Come faccio ad integrarlo coi bottoni?

Se ad esempio ho un programma che da un testo mi conta le occorrenze di una determinata parola, come posso fare per associare questo programma coi tre bottoni, ognuno dei quali è associato ad una precisa parola?

In pratica pensavo di associare a ciascun bottone una parola. Quando clicco sul bottone, mi esegue il programma già compilato con la parola corrispondente al bottone...

Re: [C] Programma c che visualizza immagini...

Inviato: domenica 5 ottobre 2008, 14:03
da IacopoDeeNosee
7cys7 ha scritto: No, no, il problema è associare un'azione a ciascun bottone. La disposizione non è un problema.
bhe mi sembrava dal post precedente che fosse quello il problema.
In pratica pensavo di associare a ciascun bottone una parola. Quando clicco sul bottone, mi esegue il programma già compilato con la parola corrispondente al bottone...
per collegare un azione ad un tasto puoi usare questo esempio:

Codice: Seleziona tutto

...
GtkWidget *button_gtk=gtk_button_new_with_label("parola da contare");
...
g_signal_connect(GTK_OBJECT(button_gtk),"clicked",GTK_SIGNAL_FUNC(launch_program),NULL);
...
per lanciare un eseguibile puoi usare la funzione system
http://edu.os3.it/html/manual/impararec/node361.html
o le exec
http://edu.os3.it/html/manual/impararec/node364.html

Codice: Seleziona tutto

void lauch_program(void)
{
   system("/path/to/the/binary argumets");
}
credo che ti convenga implementare direttamente le funzioni nel codice della gui per poi richiamarle direttamente.
BYE :)