2016-04-10 16 views
-2
JButton btn = new JButton(); 
JButton[][] boutons = {{btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}, {btn, btn, btn, btn, btn, btn, btn, btn, btn}}; 


public Fenetre() { 
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     setBounds(100, 100, 450, 300); 
     contentPane = new JPanel(); 
     contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); 
     contentPane.setLayout(new GridLayout(9, 9)); 
     setContentPane(contentPane); 

     for (int ligne=0;ligne<boutons.length;ligne++) { 
      for(int colone=0;colone<boutons[ligne].length;colone++) { 
       JButton bouton = boutons[ligne][colone]; 
       bouton.setName(String.valueOf(ligne) + " : " + String.valueOf(colone)); 
       System.out.println(String.valueOf(ligne) + " " + String.valueOf(colone)); 
       bouton.addActionListener(this); 
       contentPane.add(bouton); 
      } 
     } 


} 

9x9 Jbuttons'u (JButton dizisinde olanlar) görüntülemek ve bilgilerini daha sonra almak için her JButton'da bir ad ayarlamak istiyorum. Ama ... Benim Jpanel tek JButton var ..... sorununJButton dizisinde bulunan 9x9 Jbuttons nasıl görüntülenir?

+0

Bu 81 düğmeleri ihtiyacı var. –

+0

1) F veya daha çabuk yardım edin, bir [MCVE] veya [Kısa, Kendini İçeren, Doğru Örnek] (http://www.sscce.org/) gönderin. 2) Java GUI'lerin farklı işletim sistemlerinde, ekran boyutlarında, ekran çözünürlüğünde vb. Farklı lokallerde farklı PLAF'ler kullanarak çalışması gerekir. Bu nedenle, piksel mükemmel düzenine elverişli değildir. Bunun yerine düzen yöneticileri veya [bunların kombinasyonları] (http://stackoverflow.com/a/5630271/418556), [beyaz alan] için düzen dolguları ve kenarlıkları ile birlikte kullanın (http://stackoverflow.com/a/17874718/ 418.556). –

cevap

2

Neden: Bunun gibi aynı düğme btn

için dizi noktasının

Tüm öğeler Bunları eklediğinizde, yalnızca panelde bulunan aynı düğmeyi eklersiniz. Bu yüzden sadece 1 butonunu görüyorsunuz. Senin dizi bildiride

  • new JButton() tüm btn s değiştirin:

    Nasıl bunu çözmek için. IDE'unuzun değiştirme işlevini kullanarak bunu kolayca yapabilirsiniz.

veya

  • Tıpkı diziyi bildirmek:

    JButton[][] boutons = new JButton[9][9]; 
    

    ve döngü sende bu satırı ekleyin:

    bouton = new JButton();