Strona Główna Unixy.pl
Internetowe forum na temat systemów GNU/Linux Unix

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload
 Ogłoszenie 
Strona korzysta z plików cookies w celu realizacji usług (logowanie do konta itp.). Możesz określić warunki przechowywania lub dostępu do plików cookies w Twojej przeglądarce.

Poprzedni temat «» Następny temat
[GTK/CAIRO/C] rysowanie tablicy 2D
Autor Wiadomość
drapek

Dołączył: 10 Lut 2009
Posty: 1
Wysłany: 2009-02-10, 23:55   [GTK/CAIRO/C] rysowanie tablicy 2D

Witam wszystkich!
Jestem poczatkujacy bla blabla Napisalem w C takie cus, co powinno drukowac tablice 2d, a gdy ta wypelni okno, to ma zaczac sie przesuwac do gory. Tak jak to sie dzieje, gdy tablice wyslemy do konsoli. tu natomiast tablica jest drukowana po zakonczeniu petli, co daje nam wyswietlanie calej tablicy raz za razem. i choc z kodu to chyba nie wynika, ale w ktorejs wersji programu tablica sie przesuwala , a nie przeskakiwala, co prawda z bledami, ale jednak. potem po poprawieniu paru detali, znowu jest tak jak bylo. niestety tak sie zafiksowalem od gapienia na ten kod, ze nie wiem, co zmienic.

Kod:

x,y=0
 for(costam)
    {

        for (costam)
        {
            cairo_rectangle(cr, x, y, 5, 5);
            cairo_set_source_rgb(cr, xx[i][j], xx[i][j], 1);
            cairo_fill(cr);

        x=x+5;
        }
        x=0;
   y=y+5;
   }






Kod:
GtkWidget *okno;
  GtkWidget *rysun,*placek;

  gtk_init(&argc, &argv);

  okno = gtk_window_new(GTK_WINDOW_TOPLEVEL);


  placek = gtk_layout_new (NULL, NULL);
 rysun = gtk_drawing_area_new ();
    gtk_widget_set_size_request (rysun, 500, 500);


  gtk_container_add(GTK_CONTAINER (okno), placek);

  gtk_widget_set_size_request (placek, 500, 500);


g_signal_connect(rysun, "expose-event",   G_CALLBACK(on_expose_event), NULL);
  g_signal_connect(okno, "destroy",    G_CALLBACK(gtk_main_quit), NULL);


  gtk_window_set_position(GTK_WINDOW(okno), GTK_WIN_POS_CENTER);
  gtk_window_set_default_size(GTK_WINDOW(okno), 500, 500);
  gtk_layout_put (GTK_LAYOUT (placek), rysun, 0, 0);


  gtk_widget_show_all(okno);
g_timeout_add(1000, (GSourceFunc) stoper, (gpointer) placek);

  gtk_main();
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group