📄 BorderLayoutPastelRenkler.java .java dosyası
⬇️ İndir
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
import javax.swing.*;
public class BorderLayoutPastelRenkler extends JFrame implements ActionListener {
char a = '\u2550'; // ═
char b = '\u2551'; // ║
char c = '\u2554'; // ╔
char d = '\u2557'; // ╗
char e = '\u255A'; // ╚
char f = '\u255D'; // ╝
String[] liste = {"Boş...", "Grid 3X5", "Grid 5X9", "3 harf", "5 harf"};
JComboBox comboListe = new JComboBox(liste);
JLabel label = new JLabel("Boş...");
JPanel panel = new JPanel();
public BorderLayoutPastelRenkler() {
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);
System.out.println(f);
setLayout(new BorderLayout());
comboListe.setSelectedIndex(0);
comboListe.addActionListener(this);
label.setVerticalAlignment(JLabel.CENTER);
label.setHorizontalAlignment(JLabel.CENTER);
label.setFont(new Font("Verdana", Font.BOLD, 59));
label.setPreferredSize(new Dimension(150, 150));
add(comboListe, BorderLayout.NORTH);
add(label, BorderLayout.SOUTH);
add(panel, BorderLayout.CENTER);
setSize(1024, 768);
setTitle("Pastel renkler ve paneller. 052");
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == comboListe) {
JComboBox cb = (JComboBox) e.getSource();
String madde = (String) cb.getSelectedItem();
switch (madde) {
case "Grid 3X5" :
label.setText("GridLayout 3 x 5 seçildi...");
panel.removeAll();
panel.setLayout(new GridLayout(3,5));
for(int i=1; i<16 ; i++) {
panel.add(paselRenkliPanel(i));
}
add(panel);
revalidate();
break;
case "Grid 5X9" :
label.setText("GridLayout 5 x 9 seçildi...");
panel.removeAll();
panel.setLayout(new GridLayout(5,9));
for(int i=1; i<46 ; i++) {
panel.add(paselRenkliPanel(i));
}
add(panel);
revalidate();
break;
case "3 harf" :
label.setText("3 harf seçildi...");
panel.removeAll();
panel.setLayout(new GridLayout(1,1));
panel.add(paselRenkliPanel(1));
add(panel);
revalidate();
break;
case "5 harf" :
label.setText("5 harf seçildi...");
panel.removeAll();
panel.setLayout(new GridLayout(1,1));
panel.add(paselRenkliPanel(1));
add(panel);
revalidate();
break;
default : label.setText("Olmayan bi'madde seçildi...");
}
}
}
public static JPanel paselRenkliPanel(int sayi) {
Random r = new Random();
Color[] renkler = new Color[20];
renkler[0] = new Color(242, 182, 128);
renkler[1] = new Color(217, 206, 197);
renkler[2] = new Color(255, 212, 218);
renkler[3] = new Color(236, 255, 195);
renkler[4] = new Color(164, 242, 255);
renkler[5] = new Color(206, 232, 205);
renkler[6] = new Color(180, 200, 230);
renkler[7] = new Color(240, 219, 178);
renkler[8] = new Color(169, 217, 217);
renkler[9] = new Color(248, 200, 255);
renkler[10] = new Color(170, 179, 191);
renkler[11] = new Color(242, 212, 194);
renkler[12] = new Color(191, 189, 186);
renkler[13] = new Color(186, 242, 160);
renkler[14] = new Color(242, 206, 230);
renkler[15] = new Color(226, 200, 227);
renkler[16] = new Color(232, 255, 230);
renkler[17] = new Color(232, 225, 255);
renkler[18] = new Color(207, 180, 221);
renkler[19] = new Color(0, 59, 6); // yesil, label rengi olarak kullandik.
JPanel panel = new JPanel();
panel.setLayout(new GridLayout());
panel.setBackground(renkler[r.nextInt(19)]); // 18 e kadar olan renkler[] kullanilir
JLabel label = new JLabel();
label.setText(""+sayi);
label.setForeground(renkler[19]); // yesil renk
label.setVerticalAlignment(JLabel.CENTER);
label.setHorizontalAlignment(JLabel.CENTER);
label.setFont(new Font("Verdana", Font.BOLD, 72));
label.setPreferredSize(new Dimension(150, 150));
// label.setBounds(10,10,100,50);
panel.add(label);
return panel;
}
}