SORU
5 HAZİRAN 2009, Cuma


Java JTable Sütun Genişliği ayarı

Hangi aşağıdaki gibi sütun boyutunu ayarlayın bir JTable var

table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.getColumnModel().getColumn(0).setPreferredWidth(27);
table.getColumnModel().getColumn(1).setPreferredWidth(120);
table.getColumnModel().getColumn(2).setPreferredWidth(100);
table.getColumnModel().getColumn(3).setPreferredWidth(90);
table.getColumnModel().getColumn(4).setPreferredWidth(90);
table.getColumnModel().getColumn(6).setPreferredWidth(120);
table.getColumnModel().getColumn(7).setPreferredWidth(100);
table.getColumnModel().getColumn(8).setPreferredWidth(95);
table.getColumnModel().getColumn(9).setPreferredWidth(40);
table.getColumnModel().getColumn(10).setPreferredWidth(400);

Bu gayet iyi çalışıyor, ama tablo ekranı, son sütunun sağındaki boş alanı. Son sütun boyutlandırılmış pencereyi sonuna kadar yeniden boyutlandırma yapmak mümkün mü?

Çalışmıyor ama docs AUTO_RESIZE_LAST_COLUMN özellik buldum.

Edit: JTable tercih boyutunu ayarlayın. JScrollPane) bulunur.

CEVAP
5 HAZİRAN 2009, Cuma


Eğer son sütun setMinWidth(400) denirse ne oluryerinesetPreferredWidth(400)?

JTable, için JavaDoc çok dikkatli doLayout() için belgeleri okuyun. Burada bazı seçim biti:

Yöntemi kapsayan bir pencerenin yeniden boyutlandırma sonucunda çağrıldığında, resizingColumn null. Bu yeniden boyutlandırma "" JTable dışında yer almış demektir ve değişim - ya "" - tüm sütunlar için ne olursa olsun dağıtılmalıdır delta bu JTable otomatik boyutlandırma modu.

Bu AUTO_RESIZE_LAST_COLUMN sana yardım etmedi neden olabilir.

Bir JTable onların saygı sütun genişliklerini ayarlar yapar not: minimum ve maksimum değerleri kesinlikle.

Bu göre ayarlamak isteyebilirsiniz Min == Max için ama son sütun, sonra set Min = Tercih edilen son sütun da yok set Max veya bir dizi çok büyük değeri için Max.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jeremy Gallman

    Jeremy Gallm

    11 NİSAN 2012
  • justintimberlakeVEVO

    justintimber

    2 EYLÜL 2009
  • super1988guy

    super1988guy

    9 Aralık 2007