5/5 (3 avis)
Vue 12 923 fois - Téléchargée 744 fois
#include <gtk/gtk.h> gint x, y, departY, destY; guchar intervalle=1; GtkWidget *fen; void cbx_popup_new(gchar *caption, guchar vitesse); int main( int argc, char **argv ) { gtk_init (&argc, &argv); cbx_popup_new ( "<span face=\"Courier New\"><b>Courier New 10 Gras</b></span>\n\n" "<span font_desc=\"Times New Roman italic 12\" foreground=\"#0000FF\">" "Times New Roman\n12 Italique" "</span>", 98); gtk_main (); return 0; } gboolean Monter() { y-=1; if (y < destY) return FALSE; gtk_window_move (GTK_WINDOW(fen), x, y); return TRUE; } gboolean Descendre() { y+=1; if (y > departY) { gtk_widget_destroy (fen); return FALSE; } gtk_window_move (GTK_WINDOW(fen), x, y); return TRUE; } void OK_Click() { g_timeout_add(intervalle, (gpointer)Descendre, (gpointer)fen); } // Crée la fenêtre popup et démarre l' animation void cbx_popup_new(gchar *caption, guchar vitesse) { GtkWidget *vbox, *label, *button; GdkScreen *s; // Vitesse intervalle = (vitesse > 100) ? 1 : 101-vitesse; // Obtient résolution de l' écran s = gdk_screen_get_default(); x = gdk_screen_get_width (s) - 240; departY = y = gdk_screen_get_height(s); destY = y - 160; // Crée la fenêtre fen = gtk_window_new (GTK_WINDOW_POPUP); gtk_window_move (GTK_WINDOW(fen), x, y); g_signal_connect(G_OBJECT(fen),"destroy",G_CALLBACK(gtk_main_quit),NULL); gtk_window_set_default_size (GTK_WINDOW(fen), 200, 100); gtk_container_border_width(GTK_CONTAINER(fen),3); vbox = gtk_vbox_new (FALSE, 10); gtk_container_add (GTK_CONTAINER (fen), vbox); // Label label=gtk_label_new(NULL); gtk_label_set_markup(GTK_LABEL(label), caption); gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_CENTER); /* label = gtk_label_new (caption); gtk_label_set_line_wrap_mode (GTK_LABEL(label), PANGO_WRAP_WORD);
19 déc. 2008 à 16:00
7 août 2007 à 06:44
5 août 2007 à 11:51
Pas mal ce code, peut-etre utile. :)
Si j'arrive à modifier un peu le code (Contour de la fenêtre... par exemple) je m'en servirai dans de futur programme.
Bonne continuation.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.