![]() | |
| | #1 (permalink) |
| E Rh+ Üyelik Tarihi: 05/2005 Yer: İstanbul
Mesaj: 204
|
birden fazla tf var ve ben bunlar arasında geçişi enter la yapmak istiyorum. yani enter a her bastığımda bir alt tf ye gitsin ne yapabilirim.... şimdiden teşekkür.
__________________ C#, Asp.net,Php,Adobe Flex (with Flourine and Weborb) Developer |
| | |
| | #5 (permalink) |
| Luke is back... Üyelik Tarihi: 05/2002 Yer: ../Dark_Side
Mesaj: 2,443
|
Aslında zor değil arkadaşların dediği. Mesela 3 tane JTextField bileşenin var diyelim. Hepsi için actionListener ekleyeceksin. Kullanıcı <ENTER> yaptığında actionPerformed() çağrılacak, sonra sen hangi kutuda basıldıysa diğer kutuya geçiş yapacaksın. (Daha doğrusu odaklanma) Örnek Kod: public void actionPerformed(ActionEvent e)
{
if (e.getSource()== jTextField1)
jTextField2.requestFocus();
else if (e.getSource() == jTextField2)
jTextField3.requestFocus();
}
Kod: public void actionPerformed(ActionEvent e)
{
JTextField t;
if (e.getSource() == jTextField1)
t = jTextField2;
else if (e.getSource() == jTextField2)
t= jTextField3;
SwingUtilities.invokeLater(new Runnable()
public void run()
{
t.requestFocus();
}
);
}
Kolay gelsin
__________________ Do or do not. There is no try. |
| | |
| | #6 (permalink) |
| . Üyelik Tarihi: 10/2003
Mesaj: 629
|
ActionEvent, meselesi biraz farklı.Bu Event tipi componenttin kendisinde meydana gelen Eventtir (component'e tıklama örneğin). Burada Entere basıldıkça cursorun diğer TextField'e geçmesini sağlamak için KeyBoardda yaratılan Event'in ele alınması lazımdır.Bu event ise KeyEventtir. Aslında KeyEvent+FocusEvent ikisi birlikte kullanılmalı. En başta "hemen ben yazmayayım sen biraz uğraş" istedim."Uğraşıp kendin çözersen daha iyi öğrenirsin."diye düşündüm.Eğer uğraştıysan ve hala çözemediysen işte sana daha detaylı bir ipucu vereyim. Yapacağın kabaca şöyle, Madde madde yazayım, 1.Formdaki textFieldleri dizide tut. Kod: JTextField a,b,c,d,e;
JTextField textfields[]=new JTextField[];//a,b,c,d,e TextFieldlerini
// dizide Focus sırasına göre tut.
Kod: //KeyListener'e register edeceğin keyPressed metodunda
public void keyPressed(...){
//Basılan tuşun Enter olduğunu dedekte et.
//KeyEvent.VK_ENTER
//eğer Event Enter tuşundan gelmişse,
//Seçilmiş olan TextField'i (selectedTextField) al ve dizide
//kendisinden sora gelen TextField'i bul
//Sonraki TextFiled'i Focus et.
}
Kod: //Tüm TextFieldleri FocusListener'e ekle
//FocusListener'in focusGained() metoduyla Focus eildmiş
//TextField'i kendin uydurduğun bir TextField propertisi ne ata
//ve tut.Select edilen TextField bir yerde tutulması lazım çünkü
//diziden sorakini bulup focus edeceğiz.FocusListener
//kullanılmalı çünkü sen her Enter bastıkça Focus edileceği gibi mouse ile
//Focus yaptığındada focus edilen ve senin bunun için tuttuğun
//TextField propertisi değişmesi lazım.
|
| | |
![]() |
| Bookmarks |
| Seçenekler | |
| |
Benzer Konular | ||||
| Konu | Konuyu açana göre | Forum | Cevap | En Son Mesaj |
| Enter ile Tab Yapma | simadreta | Javascript / DHTML / Ajax | 1 | 08/06/2006 14:54 |
| Textareada enter | monder33 | ASP | 2 | 25/10/2005 17:12 |
| enter algılama | theskull | ASP | 4 | 23/01/2005 19:05 |
| <Enter> | StarturE | PHP | 9 | 19/08/2003 22:18 |
| CTRL+Enter | Sahin | Windows | 15 | 19/08/2003 02:19 |
| Reklamlar & Desteklenenler | |
| Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv | |