2016-04-08 34 views
0

Dinamik olarak oluşturulmuş bir Formum var ve bileşenler eylemleri işlemek için ihtiyaç duydukları kayıt anahtarlarını ekledi. Bir JTable da var ve JTable odaklandığında, tüm anahtarları işliyor, böylece çalıştırılan diğer bileşenler üzerindeki eylemleri tetiklemek için yapılandırılmış tuşlar. Jtable’ı yalnızca hareket tuşlarını işleyecek şekilde yapılandırabilir miyim? Örneğin. oklar, ev, son, pg yukarı ve aşağı, vb?JTable işlemi sadece hareket tuşları nasıl yapılır?

Düzenleme 1: diğer bileşenleri içeren JFrame anahtar bağları de kayıt için bu işlevi kullanıyor: odak herhangi bir bileşen ama JTable olduğunda

private void addActionListener(final int key_, final ActionListener al_){ 
    getRootPane().registerKeyboardAction(al_, 
            KeyStroke.getKeyStroke(key_, 0), 
            JComponent.WHEN_IN_FOCUSED_WINDOW); 
    } 

, kayıtlı anahtarlar buna göre tetikler, ama ne zaman odak JTable içinde, anahtar bu isnt henüz enought, ben SSCCE yapacağız Eğer JTable

yılında "tuzak" görünmektedir ve daha sonra tekrar düzenler. Benim programı test ediyordum anahtar F2 oldu ve hücreyi düzenlemeye JTable tarafından kullanılır:

+0

Anahtarları gerçekten nasıl kaydettiğinizi bilmiyoruz. Bir Anahtar Bağlama kullanıyor olmalısınız. Sorunu gösteren bir [SSCCE] (http://sscce.org/) gönderin. – camickr

cevap

0

Teşekkür camickr, ben SSCCE yapıyordu ben sorunu anladım. Orijinal programımda hücre sürümü yok ve bunu görmek çok da net değildi. Her neyse, garip bir davranış, JTable tarafından kullanılan diğer tuşların bağlanabilir olmasıdır ve JTable tarafından kullanılmaya başlandıktan sonra, bunlar kaydedilen tuş vuruşu için işlenir - ancak F2 değil.