[Çözüldü] Python Resim Galerisi

Başlatan SametAras, 27 Temmuz 2009 - 11:02:29

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

SametAras

Merhabalar,

Daha yeni Python'un PhotoImage() fonksiyonunu tanıdım. Bu fonksiyon ile önceden belirlediğim bir URL'deki resimi gösterebiliyorum:


#!/usr/bin/env python
#-*- coding:utf8 -*-

from Tkinter import *
import sys

ana = Tk()
ana.geometry("400x400")
ana.title("Resim Galerisi")

tcl = PhotoImage(file="Exit.gif")
Label(image=tcl).pack(side=TOP)
cik=PhotoImage(file="Exit.gif")
Button(image=cik,command=sys.exit).pack(side=BOTTOM)

mainloop()


Benim bu programa katmak istediklerim şunlar:


  • Sadece .gif değil tüm resim dosyalarını gösterecek.
  • Kullanıcının belirlediği bir dizindeki resimleri sırasıyla gösterecek(ileri - geri düğmeleri).



Bu konuda bana bir kod taslağa söyler misiniz ?

Saygılarımla;
Aras, Samet.

gotocan

Bir şeyler yazdım. Pek öyle mükemmel bir şey olmadı ama en azından sana bir fikir verebilir...


#!/usr/bin/env python
#-*- coding:utf8 -*-

from Tkinter import *
import sys
from tkFileDialog import askdirectory
import ImageTk
import os
ana = Tk()
ana.geometry("400x400")
ana.title("Resim Galerisi")
liste = []
a=0
def klasor_ac():
askdir=askdirectory()

for root, dirs, files in os.walk(askdir):
results=  [i for i in files if (i.find(".gif") != -1 or i.find(".png") != -1) ]
print "\nresults: ", results
for imgs in results:
try:
fullname = u"%s/%s"%(root, imgs)
liste.append(fullname.encode("utf-8"))
except:
pass
print liste
def geri():
global a, tcl
if a>0:
a-=1
print liste[0]
tcl = ImageTk.PhotoImage(file=liste[a])
lab1["image"] = tcl

def ileri():
global a, tcl
if a<len(liste)-1:
a+=1
print liste[0]
tcl = ImageTk.PhotoImage(file=liste[a])
lab1["image"] = tcl


lab1 = Label()
lab1.pack(side=TOP)
Button4 = Button(text="Klasör Aç", command=klasor_ac).pack(side=LEFT)
Button3=Button(text="Geri", command=geri).pack(side=LEFT)
Button1=Button(text="Çıkış",command=sys.exit).pack(side=LEFT)
Button2=Button(text="İleri", command=ileri).pack(side=LEFT)
mainloop()



Esenlikler...
goto www.gotocan.com;
http://ubuntucounter.geekosophical.net//img/ubuntu-user.php?user=28544
Nam-ı diğer : macellan

SametAras

Merhabalar,

Teşekkür ederim. Lakin ImageTk isimli modül bende bulunmuyor. Rica etsem, nasıl yüklendiğini gösterir misiniz ?

Saygılarımla;
Aras, Samet.

gio

Alıntı yapılan: SametAras - 27 Temmuz 2009 - 19:41:33
Merhabalar,

Teşekkür ederim. Lakin ImageTk isimli modül bende bulunmuyor. Rica etsem, nasıl yüklendiğini gösterir misiniz ?

Saygılarımla;
Aras, Samet.

merhaba,

paket yöneticisinde "ImageTk" yazarsanız ulaşırsınız.

SametAras

Merhabalar,

Teşekkürler arkadaşlar. Program'da gayet güzel.

Saygılarımla;
Aras, Samet.

heartsmagic

Forumda Python'la ilgilenenleri ve sorulan sorulara cevap verenleri görmek bizleri sevindiriyor.
Sorun çözüldü mü acaba?
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

Python

şu pythonu o kadar cok ögrenmek istiyorum ki ama acık ve güzel bi kaynak bulamadım gitti dogrusu :)
Bilginin Efendisi Olmak için, Çalışmanın Esiri Olmak Gerekir - Linux For Humans

SametAras

Merhabalar,

Evet evet, "gotocan" isimli arkadaşımız güzel bir kod taslağı verdi. @BLaCK_sPy; şu(Python Programlama Dilini Öğrenmek İçin) konuya bakmanı öneririm.


Saygılarımla;
Aras, Samet.

heartsmagic

Bu durumda konuyu etiketleyip, kapatıyorum.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.