2009-04-18 11 views
11

Şu ana kadar bir veritabanı sorgusunun sonuçlarını saklayan bir JTable'ım var. İstediğim şey, her tablodaki son sütun için, bu satırda temsil edilen nesne için düzenleme ekranını açacak bir clickible JButton'a sahip olması ve düğmenin, tablodaki ilk sütunun ayrıntılarını bilmesi gerektiği anlamına gelir. kendi satırı (veritabanından kimlik).JBTton'u JTable'a eklemek mümkün mü?

Herhangi bir öneri? Ben zaten JButtons'u eklemeyi denedim ama çalıştırmayı denediğimde Metin'e dönüştüler.

cevap

5

Yukarıdaki öğreticinin aksine, karmaşık bir konumlandırma matematiği, özel fare dinleyicileri ve özel tablo modelleri olmadan bunu yapmanın bir yolu vardır. yararlı olma (bir Jpanel kullanarak, bu durumda) Ayrıca, benzer bir konuyla ilgili benim öğretici bulabilirsiniz

http://web.archive.org/web/20100623105810/http://ivolo.mit.edu/post/A-Simple-Pattern-for-Embedding-Components-into-a-Swing-JTable.aspx

+1

Bu mükemmel ve çok faydalıdır. – Epaga

+2

Bağlantı öldü, bu çözümü herhangi bir yerde bulmak hala mümkün mü? – KristianMedK

+1

Way Back makinenin bir kopyası var ... Ama bu çözüm bir (her ne kadar anonim) tablo modelini kullanıyor gibi görünüyor, bu yüzden bu öğreticiyi diğerlerinden daha iyi kılan ilk bakışta emin değilim ... – Rini

1

Sun'ın JTable bileşenine girişine, özellikle de Editors and Renderers bölümüne bakın. Alternatif CellRenderers ve CellEditors'un kullanımını tartışır. Yapmanız gereken şey bir ButtonCellRenderer ve ButtonCellEditor oluşturmak (veya ödünç almak) ve daha sonra bunları JTable'unuzda söz konusu sütuna uygulamaktır. Bağlantılı makalelerde bulunan örnekler, ihtiyacınız olan tüm bilgileri size vermelidir.

+0

Fare tıklatmasının bir ButtonCellRenderer's düğmesinin üzerine getirilmesi dışında kolaydır. –

+2

İşleyici, etkinlikleri kabul etmiyor. Bu editörün işi. Verdiğim cevapta öğreticime bir göz at. – pek