4 Nisan 2013

Customized JList | Özelleştirilmiş JList


JListi özelleştirebilmek için ListCellRenderer interface'inden yararlanırız. JList hücrelerini istediğimiz gibi özelleştirebileceğimiz bir sınıf düşünelim. Bu sınıfa ListCellRenderer interface'ini implements ettiğimiz zaman @Override metod oluşturur. Bu metod sayesinde özelleştirmiş olduğumuz sınıfı JListe göstererek JList hücrelerini özelleştirmiş oluruz.


28 Mart 2013

Password Login | Şifreli Giriş


Şifreli Giriş Uygulaması

Kullanıcı Adı veya Parola Başarısız Ekranı

Kullanıcı Adı veya Parola Başarılı Ekranı


15 Mart 2013

JList Right Click Menu - Sağ Tık Menüsü

JList üzerinde sağ tıkladığımızda normalde herhangir bir değişim olmuyor. Sağ tıkalamayı özelleştirelim istediğimiz kısayol menülerini atayalım.

Öncelikle JPopupMenu oluşturalım. Eklemek istediğimiz hemen hemen herşeyi bu menüye ekleyebilir, liste üzerinde sağ tıklayarak ulaşabiliriz.


7 Mart 2013

H2 Embedded Database | H2 Gömülü veritabanı


H2 veritabanı da derby, hsqldb, mysql, postgresql veritabanları gibi projelerimizde kullanabiliriz. Diğer veritabanlarına göre hızlı ve küçük boyutu sayesinde daha fazla ilgi çekmektedir. 

24 Şubat 2013

JTextField limit

Veritabanı kayıtları sırasında en çok karşılaşılan hatalardan biri de fazla karakter kaydedilmeye çalışmaktır. Kayıt öncesi kontrollerle bunu engelleyebileceğimiz gibi JTextField'lara belirli bir limit vererek kontrol yapmaktan kurtulabiliriz. Aşağıdaki sınıfı projemize dahil ederek tek satırla kontrollerden kurtulabiliriz.

// sınıfın kullanılması 
field.setDocument(new JTextFieldLimit(10));
 

Java Screen capture - Ekran Görüntüsü

Java ekran görüntüsünü nasıl alırız?
 
public static void capture(String saveDictionary) {
  try { 
     // görüntünün alınacağı boyutları Toolkit yardımıyla alıyoruz.
     Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
 
     // BufferedImage ve Robot sınıfları yardımıyla ekran belirlediğimiz boyuta göre
     // ekran görüntüsünü alıyoruz. 
     BufferedImage capture = new Robot()
  .createScreenCapture(new Rectangle(screenSize)); 
 
     // metoda gelen kayıt dizini için dosya oluşturup
     File yol = new File(saveDictionary); 
 
 
     // klasör olup olmadığını kontrol ediyoruz
     if (!yol.isDirectory()) { // eğer klasör yoksa
 yol.mkdirs(); // klasörü oluşturuyoruz
     } 
 
     // son olarak BufferedImage nesnesinde bulunan resmi ImageIO sınıfı
     // yardımıyla kayıt dizinine kaydediyoruz.
     ImageIO.write(capture, "jpg", yol);
   } catch (Exception e) {
   }
}

Server Client

Client ve server arasında anlık ileti sistemi

Client Uygulamanın servera bağlanması


Servera bağlantı ve Mesaj

8 Ocak 2013

C - Allegro - Araba Yarışı

C ile allegro kütüphanesini kullanarak yapılmış olan bir araba yarışıdır. Oyunda belirli seviyeler, puanlar ve rasgele hareket eden engeller vardır. Engellerden kaçarak puanınızı artırabilirsiniz.