[linux-programlama] Re: gtk+

---------

From: M.Ali VARDAR (alivardar@ttnet.net.tr)
Date: Thu 31 Jul 2003 - 09:28:57 EEST

  • Next message: tuncay bas: "[linux-programlama] windows ve postgresql"

    Selamlar
    GTK ile thread kullanımına ornek basit bir uygulama
    http://www.linuxprogramlama.com/index.php?sayfa=gtktalker.htm adresşinden bakılabilir.
    Saygılarımla
    M.Ali VARDAR

    > Kimden: Mustafa Sahin <msahin@comu.edu.tr>
    > Tarih: 2003/07/31 Thu AM 08:23:10 EEST
    > Kime: linux-programlama@liste.linux.org.tr
    > Konu: [linux-programlama] Re: gtk+
    >
    > Bu tip durumlarda thread mantıgı kullanılır yani senin dongu icinde
    > yaptırdıgın islemi thread icinde yaptırırsın boylece diger
    > uygulamaların ve senin diger kodlarında arada bir calisir GTK da thread
    > var mı bilmiyorum ama bakman lazım.
    > sanırım soyle olması gerekiyor
    >
    > gdk_threads_enter();
    > //senin dongun
    > gdk_threads_leave();
    >
    >
    >
    > necati.demir@students.comu.edu.tr wrote:
    >
    > >merhabalar,
    > >gtk+ ile bir pencere oluşturdum, üstüne butonu koydum. ardından butonun
    > >click sinyalini main2 fonksiyonuna yönlerdim. main2 fonksiyonun yaptığı iş
    > >durmadan(saniyede bir) konsola merhaba yazıyor. işte bu esnada oluşturduğum
    > >pencereyi bir daha kullanamıyorum. kitleniyor. ne yapmam lazım. kodlar
    > >aşağıda. pencere içine başka nesne koysam, onu da kullanamıyorum. yani
    > >pencere kitleniyor (sonsuz döngü nedeniyle).
    > >/***********Necati*********/
    > >#include <gtk/gtk.h>
    > >#include <time.h>
    > >#include <stdlib.h>
    > >GtkWidget *window;
    > >GtkWidget *button;
    > >struct timespec *req, *rem;
    > >void main2(GtkWidget * widget, gpointer gdata)
    > >{
    > >
    > > req = new timespec;
    > > rem = new timespec;
    > > req->tv_sec = 1;
    > > req->tv_nsec = rem->tv_nsec = rem->tv_sec = 0;
    > > while(1){
    > >
    > > g_print("merhaba\n");
    > > nanosleep (req, rem);
    > >
    > > }
    > >}
    > >/*****************/
    > >int main(gint argc,gchar *argv[])
    > >{
    > >
    > >
    > > gtk_init (&argc, &argv);
    > > window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    > > button=gtk_button_new_with_label("TAMAM");
    > > gtk_container_add (GTK_CONTAINER (window), button);
    > >
    > >gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(main2),NULL)
    > >;
    > > gtk_widget_show (window);
    > > gtk_widget_show (button);
    > > gtk_main ();
    > > exit (0);
    > >
    > >}
    > >
    > >
    > >
    > >
    > >
    > >
    >
    >
    >
    >


  • Next message: tuncay bas: "[linux-programlama] windows ve postgresql"

    ---------

    Bu arsiv hypermail 2.1.6 tarafindan uretilmistir.