Merhabalar JTable ile oluşturduğum tablomun çerçevesinin yüksekliği jframe boyutlarını aşıyor. Ben tablonun boyutlarına nasıl müdahale ederim?

stokTablo.setPreferredSize(new Dimension(540, 360));

bu kod ile tablo içeriğinin boyutlarına müdahe edebiliyorum. Ancak sıkıntı çerçevede yardımcı olur musunuz?

alt text

//ortaPanelListele
ortaPanelListele = new JPanel();
ortaPanelListele.setBorder(BorderFactory.createTitledBorder("Stok Listele"));
ortaPanelListele.setLayout(new FlowLayout());
String[][] stok = {
     {"001", "Tuğla"}
};
String[] baslik = {"Stok No", "Stok Adı"};
stokTablo = new JTable(stok, baslik);
stokTablo.setPreferredSize(new Dimension(540, 360));
ortaPanelListele.add(new JScrollPane(stokTablo));
ortaPanelListele.setPreferredSize(new Dimension(540 ,1));

soruldu: 18 Mar '13, 15:27

igundu91's gravatar image

igundu91
214242933
cevap kabul oranı: 20%

değiştirildi: 19 Mar '13, 11:26

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183

Paneller kullanıp, panel'i baz alıp öyle boyutlandırmayı denemelisin.

(18 Mar '13, 16:15) Turgay Can Turgay%20Can's gravatar image

hocam önce bir bir contentPane'm var, Layout'u BorderLayout. Onun üzerinde NORT'da ustPanel'im var. CENTER'da ortaPanel'im var. ortaPanel'im boyutu 540,360 ama gene bir bakayım. ortPanelListele panel üzerinde tablom, kodlarını ekledim.

(19 Mar '13, 02:00) igundu91 igundu91's gravatar image
1

İç içe paneller varsa, birbirine bağımlıdırlar. Eğer direkt olarak eklediğin panellerin biri üzerinde bunu yapmaya çalışıyorsan, bağımlı olduğu panellerin resizeable olması gerekli, eğer fixed değerler varsa herhangi birinde etkeni olmaz yaptığın değişikliğin.

(19 Mar '13, 02:40) Turgay Can Turgay%20Can's gravatar image

BorderLayout'u iyi kullanirsaniz bu tur sorunlar yasamassiniz. Genelde content paneller icin BorderLayout cok kullanislidir. BorderLayout'da center'a JTable'i JScrollBar icinde eklerseniz direk kendisinin container'in genisligini alacaktir. JTable'a ayrica size vermenize gerek kalmaz.

  
  
// JFrame veya JDialog setPreferredSize() verilmeli container'a 
// Ana container BorderLayout olmali ve tablePanel ana container'in center'ine eklenmeli!
JPanel tablePanel = new JPanel(new BorderLayout());
JToolBar toolBar = new JToolBar();
JTable stokTable = new JTable();
tablePanel.add(toolBar, BorderLayout.NORTH);
tablePanel.add(new JScrollPane(stokTable), BorderLayout.CENTER);

// TODO container olustur
// ...
  
permanent link

cevaplandı: 19 Mar '13, 12:02

CemIkta's gravatar image

CemIkta ♦
19.9k29125190
cevap kabul oranı: 36%

Teşekkür ederim hocam, çok güzel oldu şimdi :)

(20 Mar '13, 08:21) igundu91 igundu91's gravatar image
Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1,079
×79

Soruldu: 18 Mar '13, 15:27

Görüntüleme: 942 kez

Son güncelleme: 20 Mar '13, 08:21

powered by BitNami OSQA