Merhaba.
Bu sefer Python ile arayüz programlamayı dilim döndüğünce ve örneklerle anlatmaya çalışacağım. Bu döküman giriş seviyesinde olup biraz python dilini bilmeyi gerektirmektedir.

İlk olarak standart bir arayüz içerisinde bir metin yazdıralım;

  1. #!/usr/bin/env pythonfrom
  2.  
  3. Tkinter import * # Kullanacagimiz python modulunu cagiriyoruz.
  4.  
  5. ilkGui=Tk() # penceremize verdigimiz ad ilkGui
  6. widget = Label(ilkGui)
  7. widget.config(text="Ilk GUI Denememiz")
  8. widget.pack()
  9. ilkGui.mainloop()

Örnek : sample-1.py

Şimdi bu penceremize bir çıkış butonu ekleyelim

  1. #!/usr/bin/env python
  2.  
  3. import sys # Burada sistem modullerini cagiriyoruz
  4. from Tkinter import * # Kullanacagimiz python modulunu cagiriyoruz.
  5.  
  6. ilkGui=Tk() # Penceremize verdigimiz ad ilkGui
  7. widget = Label(ilkGui)
  8. widget.config(text="Ilk GUI Denememiz")
  9. widget.pack()
  10. widget = Button() # Buton widgetini cagiriyoruz
  11. widget.config(text="Kapat") # Buton yazimiz
  12. widget.config(command=sys.exit) # Butona basinca yapacagi islemi belirtiyoruz
  13. widget.pack()
  14. ilkGui.mainloop()

Örnek : sample-2.py

Şimdi güzel bir pencere oluşturduk ama başlığında Tk yazısı sinir bozucu görünüyor onun yerine kendimiz bir başlık vermek istiyoruz o halde kodumuza şöyle bişeyler ekleyelim

  1. #!/usr/bin/env python
  2. import sys # Burada sistem modullerini cagiriyoruz
  3. from Tkinter import * # Kullanacagimiz python modulunu cagiriyoruz.
  4.  
  5. ilkGui=Tk() # Penceremize verdigimiz ad ilkGui
  6. ilkGui.title("Ilk GUI Denememizin Basligi")
  7.  
  8. widget = Label(ilkGui)
  9. widget.config(text="Ilk GUI Denememiz")
  10. widget.pack()
  11. widget = Button() # Buton widgetini cagiriyoruz
  12. widget.config(text="Kapat") # Buton yazimiz
  13. widget.config(command=sys.exit) # Butona basinca yapacagi islemi belirtiyoruz
  14. widget.pack()
  15. ilkGui.mainloop()

Örnek : sample-3.py

Kodları indirmek için Tıklayın

vakit buldukça devamını getirmeye çalışacağım :)


Penguen’i çok seviyoruz :D

Python kullanarak her iki saniyede bir UDP üzerinden paket göndermek için soketnasıl açılır? :)

Öncelikle sunucumuz:

  1. #!/usr/bin/env python
  2.  
  3. from socket import socket, gethostbyname, AF_INET, SOCK_DGRAM
  4.  
  5. PORT_NUMARASI = 65535 # 65535 portu bos bir port oldugu icin onu tercih ettim
  6.  
  7. hostAdi = gethostbyname( ‘localhost’ ) # Sunucunun adresi localhost kalabilir
  8.  
  9. Soket = socket( AF_INET, SOCK_DGRAM )
  10. Soket.bind( (hostAdi, PORT_NUMARASI) )
  11.  
  12. print "Test sunucusunun dinledigi port %dn" % PORT_NUMARASI
  13.  
  14. print "Eger bir veya daha fazla istemci calistirmadiysaniz hemen simdi calistirin.n"
  15.  
  16. while 1:
  17. (data, addr) = Soket.recvfrom( 50 )
  18. print "Alinan paket: " + `addr` + ", " + data

Şimdide istemcimizi hazırlayalım:

  1. #!/usr/bin/env python
  2.  
  3. from socket import socket, AF_INET, SOCK_DGRAM
  4. from time import sleep, gmtime, strftime
  5.  
  6. SUNUCU_IP   = ‘127.0.0.1′ # Sunucuyu ve istemciyi ayni pc de calistirirsaniz 127.0.0.1 kalabilir
  7. PORT_NUMARASI = 65535 # 65535 portu bos bir port oldugu icin onu tercih ettim
  8.  
  9. print "Test istemcisi %s IP adresinin %d portuna paket gonderiyorn" %
  10. (SUNUCU_IP, PORT_NUMARASI)
  11.  
  12. print "Eger sunucuyu calistirmadiysaniz hemen simdi calistirin.n"
  13.  
  14. Soket = socket( AF_INET, SOCK_DGRAM )
  15.  
  16. while 1:
  17. localTime = strftime( "%H:%M:%S", gmtime() )
  18. Soket.sendto( "paket_zamani = " + localTime, (SUNUCU_IP, PORT_NUMARASI) )
  19. print "Paket gonderiliyor… " + localTime
  20. sleep( 2 )

Kodları İndir

Get the Flash Player to see the wordTube Media Player.

Kesinlikle bekliyorum :P

Soilwork’ün yeni albümü Sworn To A Great Divide 14 Ekim’de müzik marketlerde yerini alacak”mış”. Türkiye’ye ne zaman gelir bilinmez.
Ben albümü piyasadan temin edene kadar tabii ki slsk en büyük dostum olucak :)

Bu arada bi dip not geçeyim : torrentteki versiyon boş evet ses yok. Nuclear Blast’in albümü duyurmak için bi oyunu olsa gerek ;)