Python ve Kivy ile Uygulama Geliştirme – 2

Categories python kivyPosted on
teknopenguen kivy uygulama

Kivy ile uygulama geliştirme derslerinin ikincisini yapıyoruz. Burada çoğu uygulamada görmüş olduğumuz giriş ekranını yapmaya çalışacağız. Yani bir adet kullanıcı adı girilecek yer ve bir adet şifre girilecek bir alan oluşturacağız.

kivy uygulama örnek

İlk adımda klasik giriş ile başlıyoruz yani gerekli sınıfları uygulamamıza dahil ediyoruz. Burada klasik bir App sınıfına daha sonra gerekli yazıları yazacağımız yani “kullanıcı adı:” gibi etiketlerimiz için Label sınıfına ve giriş bölümleri için textinput alanlarına ihtiyacımız var. Gelin import işlemlerine başlayalım.

  1. from kivy.app import App
  2. from kivy.uix.label import Label
  3. from kivy.uix.textinput import TextInput
  4. from kivy.uix.gridlayout import GridLayout

Bir önceki dersimizde return ifadesi ile bir label döndürmüştük. Bu sefer yazacağımız uygulama biraz daha karmaşık olduğu için ek bir sınıf tanımlayacağız ve return ifadesini bu sınıfın bir örneğini döndürmek için kullanacağız.

  1. class giris(GridLayout):
  2. def __init__(self,**kwargs):
  3. super(giris,self).__init__(**kwargs)

Python nesne tabanlı programlamada alışık olduğumuz şekilde sınıf girişimizi yapıyoruz. Yalnız burada sınıfımız GridLayout sınıfını miras alıyor. GridLayout etiketlerimizin yerleşimi için tercih ettiğimiz bir yerleşim düzeni şekli.

Daha sonra gerekli etiket ve giriş alanlarını oluşturuyoruz.

  1. self.cols = 2
  2.  
  3. self.kullaniciadi = Label(text = "Kullanici adi: ")
  4. self.add_widget(self.kullaniciadi)
  5.  
  6. self.kullanici = TextInput(multiline = False)
  7. self.add_widget(self.kullanici)
  8.  
  9. self.sifreyazi = Label(text = "Sifre: ")
  10. self.add_widget(self.sifreyazi)
  11.  
  12. self.sifre = TextInput(multiline = False , password = True)
  13. self.add_widget(self.sifre)

Burada ilk önce self.cols ifadesi ile Layoutumuzun 2 sütundan oluştuğunu belirttik va daha sonra sırası ile Label tanımlayıp add_widget ifadesi ile ekrana ekledik ve diğerleri içinde sırası ile bunu uyguladık. Burada önemli olan nokta: widget ların yerleşim sırasını değiştirirsek ekranda görünme şeklide değişecektir. İsterseniz yerleşim şekillerini değiştirerek nasıl bir sonuç elde ettiğimizi test edebilirsiniz.

  1. class uygulama(App):
  2.  
  3. def build(self):
  4.  
  5. return giris()

Bu yapıyı zaten önceki dersimizden hatırlıyorsunuz. App sınıfını miras alan asıl uygulamamız ve yaptığımız değişikliklerin return edilmesi.

  1. if __name__ == "__main__":
  2.  
  3. uygulama().run()

Bu yapıda da uygulamamızın başlatılabilmesini sağlıyoruz. Bu dersimizde bu kadar arkadaşlar bu dersimizi eğer video şeklinde izlemek isterseniz aşağıdan ders anlatımımıza ulaşabilirsiniz. Bir dahaki derste görüşmek üzere.

avatar