📄 YemekAnketi.java .java dosyası

⬇️ İndir
import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; public class YemekAnketi { private JLabel isimLabel; private JLabel yasLabel; private JLabel cinsiyetLabel; private JTextField fieldIsim; private JTextField fieldYas; private JRadioButton[] cinsiyetSecenekleri; private JRadioButton[][] soruSecenekleri; private String[] soruMetinleri = { "Menü seçimi ve yemek çeşitlerinin uygunluğu", "Yemeklerin sunuluş biçimi", "Yemeklerin lezzeti", "Yemeklerin sıcaklığı", "Yemeklerin miktarı", "Restoran personelinin davranışı", "Servisin kalitesi", "Temizlik ve hijyen kurallarına uyum", "Restoranımızı tavsiye eder misiniz?" }; public YemekAnketi() { JFrame frame = new JFrame(); frame.setTitle("Restoran Müşteri Memnuniyet Anketi | Java Blaclboard [153]"); frame.setLayout(null); JPanel anketPaneli = new JPanel(); anketPaneli.setLayout(null); anketPaneli.setBackground(new Color(230, 225, 195)); anketPaneli.setBounds(30, 30, 1000, 540); // Giriş formu bileşenleri isimLabel = new JLabel("İsim:"); isimLabel.setBounds(20, 20, 100, 30); fieldIsim = new JTextField(); fieldIsim.setBounds(120, 20, 200, 30); yasLabel = new JLabel("Yaş:"); yasLabel.setBounds(20, 50, 100, 30); fieldYas = new JTextField(); fieldYas.setBounds(120, 50, 200, 30); cinsiyetLabel = new JLabel("Cinsiyet:"); cinsiyetLabel.setBounds(20, 80, 100, 30); ButtonGroup cinsiyetGrubu = new ButtonGroup(); cinsiyetSecenekleri = new JRadioButton[]{ new JRadioButton("Erkek"), new JRadioButton("Kadın") }; int cinsiyetX = 120; int cinsiyetIndex = 0; for (JRadioButton radio : cinsiyetSecenekleri) { cinsiyetGrubu.add(radio); cinsiyetSecenekleri[cinsiyetIndex].setBounds(cinsiyetX, 80, 100, 30); anketPaneli.add(radio); cinsiyetIndex++; cinsiyetX+=100; } // Anket formu bileşenleri soruSecenekleri = new JRadioButton[soruMetinleri.length][3]; JLabel[] soruLabel = new JLabel[soruMetinleri.length]; int soruY = 110; int soruFark = 30; for (int i = 0; i < soruMetinleri.length; i++) { soruLabel[i] = new JLabel((i + 1) + ". " + soruMetinleri[i]); soruLabel[i].setBounds(20, soruY, 400, 30); anketPaneli.add(soruLabel[i]); ButtonGroup soruGrubu = new ButtonGroup(); for (int j = 0; j < 3; j++) { soruSecenekleri[i][j] = new JRadioButton(getSecenekMetni(j)); soruSecenekleri[i][j].setBounds(420+(100*j), soruY, 100, 30); soruGrubu.add(soruSecenekleri[i][j]); anketPaneli.add(soruSecenekleri[i][j]); } soruY+=soruFark; } // Bitir düğmesi JButton butonBitir = new JButton("Bitir"); butonBitir.setBounds(20, soruY, 100, 30); butonBitir.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { anketiKaydet(); } }); anketPaneli.add(isimLabel); anketPaneli.add(fieldIsim); anketPaneli.add(yasLabel); anketPaneli.add(fieldYas); anketPaneli.add(cinsiyetLabel); anketPaneli.add(butonBitir); frame.add(anketPaneli); frame.setSize(1060, 622); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } private String getSecenekMetni(int indeks) { switch (indeks) { case 0: return "Çok İyi"; case 1: return "İyi"; case 2: return "Kötü"; default: return ""; } } private void anketiKaydet() { try (BufferedWriter writer = new BufferedWriter(new FileWriter("src/Anket.txt", true))) { String isimYasCinsiyet = fieldIsim.getText() + "," + fieldYas.getText() + ","+ secilenCinsiyet(); String cevap = ""; for (int i = 0; i < soruMetinleri.length; i++) { cevap = cevap + "," + secilenSoruCevabi(soruSecenekleri[i]); } writer.write(isimYasCinsiyet + cevap + "\n"); JOptionPane.showMessageDialog(null, "Anket başarıyla kaydedildi!"); } catch (IOException e) { e.printStackTrace(); JOptionPane.showMessageDialog(null, "Anket kaydedilirken bir hata oluştu."); } } private String secilenCinsiyet() { for (JRadioButton radio : cinsiyetSecenekleri) { if (radio.isSelected()) { return radio.getText(); } } return "Cinsiyet seçilmedi"; } private String secilenSoruCevabi(JRadioButton[] secenekler) { for (JRadioButton radio : secenekler) { if (radio.isSelected()) { return radio.getText(); } } return "-1"; } public static void main (String[] args) { new YemekAnketi(); } }