Java Kodu Yardım (String)

Sismic44
30-07-2011, 16:22   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
10 mesaj
Kayıt Tarihi:Kayıt: Ağu 2008

Form üzerinde herhangi textbox veya label' a bir string'in her harfini tek tek sırayla yazdırmaya yarayan basit bir program yapmaya çalışıyorum.  
private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {        
    String deneme = "arabalar";        
        for(int i = 0 ; i < deneme.length(); i++){          
            for(double j = 0 ; j < 100000 ; j++){                
                jLabel1.setText(Character.toString(deneme.charAt(i)));          
           }        
        }
}
Kod böyle, sorun ise lableda sadece son harfi yazdırması, diğer hiçbir harf gözükmüyor. Çok bir uygulamam yok formlar üzerine ama sorun settext' le ilgili bir şey galiba.
Nasıl düzeltiriz acaba bunu?

Son Düzenleme: Sismic44 ~ 30 Temmuz 2011 16:23
onuralg
08-08-2011, 19:03   |  #2  
Taze Üye
Teşekkür Sayısı: 1
2 mesaj
Kayıt Tarihi:Kayıt: Ağu 2011

String deneme = "arabalar";        
     jLabel1.setText(deneme);

Yazman yeterli. Ama ben animasyon şeklinde sırasıyla a ar ara arab araba gelsin istiyosan Timer classını kullanmalısın.

seandillon
11-08-2011, 04:07   |  #3  
Üye
Teşekkür Sayısı: 0
56 mesaj
Kayıt Tarihi:Kayıt: May 2005

jLabel1.setText(Character.toString(deneme.charAt(i)));   
komutu ile her seferinde jLabel içindeki yazıyı güncelliyorsun. her seferinde sdece bir harfi set ediyorsun. Şöyle yapabilirsin.

jLabel1.setText(jLabel1.setText+Character.toString(deneme.charAt(i)));

Bu şekilde yaptığında düzelecektir...

Irrlandia
17-03-2012, 07:31   |  #4  
Taze Üye
Teşekkür Sayısı: 0
5 mesaj
Kayıt Tarihi:Kayıt: Şub 2012

Merhaba , Timer Class'ı kullanımı bilmiyorsanız ; Kendi zamanlayıcınızı oluşturup kullanabilirsiniz. Buyrun.


public static void Beklet (int sure) {


long simdi = System.currentTimeMillis();

long son = System.currentTimeMillis();
   while (true ) {

son=System.currentTimeMillis();


if  (son-simdi>(sure*1000)){

break;



/* buradan sure * 1000 dememin sebebi ( sure = 1 varsayalım) 1 saniye bekleme yapmak için. curruenttimemillis fonksiyonu zamanı milisaniye biçiminden aldığı için 1000 ile çarparak 1 saniyeye çevirdim.  */

   }   } 

Son Düzenleme: Irrlandia ~ 17 Mart 2012 08:20