Faire une zone de dessin avec cairo
sofi
-
sofi -
sofi -
Bonjour,
j'ai regardé un programme dans un site web qui nous permet de faire un zone de dessin mais lorsque je l'ai lancé il m'affiche seulement une interface vide nous contient pas ni des boutons ni des zones de dessin
voilà le code
merci en avance
j'ai regardé un programme dans un site web qui nous permet de faire un zone de dessin mais lorsque je l'ai lancé il m'affiche seulement une interface vide nous contient pas ni des boutons ni des zones de dessin
voilà le code
#include <cairo.h>
#include <gtk/gtk.h>
double coordx[100];
double coordy[100];
int count = 0;
static gboolean
on_expose_event(GtkWidget *widget,
GdkEventExpose *event,
gpointer data)
{
cairo_t *cr;
cr = gdk_cairo_create(widget->window);
cairo_set_source_rgb(cr, 0, 0, 0);
cairo_set_line_width (cr, 0.5);
int i, j;
for ( i = 0; i <= count - 1; i++ ) {
for ( j = 0; j <= count -1; j++ ) {
cairo_move_to(cr, coordx[i], coordy[i]);
cairo_line_to(cr, coordx[j], coordy[j]);
}
}
count = 0;
cairo_stroke(cr);
cairo_destroy(cr);
return FALSE;
}
gboolean clicked(GtkWidget *widget, GdkEventButton *event,
gpointer user_data)
{
if (event->button == 1) {
coordx[count] = event->x;
coordy[count++] = event->y;
}
if (event->button == 3) {
gtk_widget_queue_draw(widget);
}
return TRUE;
}
int main (int argc, char *argv[])
{
GtkWidget *window;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_add_events (window, GDK_BUTTON_PRESS_MASK);
g_signal_connect(window, "expose-event",
G_CALLBACK(on_expose_event), NULL);
g_signal_connect(window, "destroy",
G_CALLBACK(gtk_main_quit), NULL);
g_signal_connect(window, "button-press-event",
G_CALLBACK(clicked), NULL);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_title(GTK_WINDOW(window), "lines");
gtk_window_set_default_size(GTK_WINDOW(window), 400, 300);
gtk_widget_set_app_paintable(window, TRUE);
gtk_widget_show_all(window);
gtk_main();
return 0;
}
merci en avance
A voir également:
- Faire une zone de dessin avec cairo
- Alternative zone telechargement - Accueil - Outils
- Cairo dock - Télécharger - Divers Utilitaires
- Télécharger dessin animé gratuit disney - Télécharger - Streaming vidéo
- Groupe de 4 personnages dessin animé ✓ - Forum Loisirs / Divertissements
- Logiciel de dessin industriel gratuit - Télécharger - CAO-DAO