📄 MailHesap.java .java dosyası

⬇️ İndir
import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; public class MailHesap { public static String isim; public static String soyad; public static String password; public static int passwordLength = 8; public static String departman; public static JComboBox departmanCombo; public static int mailBoxKapasitesi; public static String alternatifMail; public static String sirketMailOnEk; public static String sirketMailUzantisi = "kesinbisirket.com"; public static JComboBox mailBoxKotaCombo; public static JTextField sirketMailTextField; public static JTextField sirketMailKotaTextField; public static JPanel anaPanel = new JPanel(); public static String[] sonucPanelGoster = new String[7]; public MailHesap() { JFrame frame = new JFrame("Şirket İçi Mail Hesabı Oluşturma | Java Blackboard [132]"); frame.setLayout(null); anaPanel.setLayout(null); anaPanel.setBackground(new Color(217, 217, 217)); anaPanel.setBounds(50, 50, 900, 500); sonucPanelGoster[0] = "mailBekleniyor.jpg"; sonucPanelGoster[1] = "İsim Soyad"; sonucPanelGoster[2] = "Departman"; sonucPanelGoster[3] = "Şirket mail"; sonucPanelGoster[4] = " 0 MB"; sonucPanelGoster[5] = "Şifre"; sonucPanelGoster[6] = "Alternatif mail"; anaPanel.add(infoPanel()); anaPanel.add(sonucPanel(sonucPanelGoster)); frame.add(anaPanel); frame.setSize(1000, 622); frame.setLocationRelativeTo(null); frame.getContentPane().setBackground(new Color(217, 185, 91)); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public static JPanel logoPanel() { JPanel panel = new JPanel(); panel.setLayout(null); panel.setBackground(new Color(140, 28, 3)); ImageIcon icon = new ImageIcon("src/images/sirketLogo.jpg"); JLabel logoLabel = new JLabel(); logoLabel.setIcon(icon); logoLabel.setBounds(0, 0, 350, 100); panel.add(logoLabel); panel.setBounds(25, 25, 350, 100); return panel; } public static JPanel mailOlusturulduPanel(String dosyaIsmi) { // iki tane dosyamiz var bunlar da duruma gore degisecek // 1) mailBekleniyor.jpg // 2) mailOlusturuldu.jpg JPanel panel = new JPanel(); panel.setLayout(null); panel.setBackground(new Color(140, 28, 3)); ImageIcon iconMail = new ImageIcon("src/images/" + dosyaIsmi); JLabel mailLabel = new JLabel(); mailLabel.setIcon(iconMail); mailLabel.setBounds(0, 0, 350, 100); panel.add(mailLabel); panel.setBounds(25, 25, 350, 100); return panel; } public static JPanel infoPanel() { JPanel panel = new JPanel(); panel.setLayout(null); panel.setBackground(new Color(169, 203, 217)); panel.add(logoPanel()); int xStart = 10; int x = xStart; int y = 150; int xFark = 100; int yFark = 30; int labelGenislik = 150; int textFieldGenislik = 280; int ortakYukseklik = 30; JLabel isimLabel = new JLabel("İsim : "); isimLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField isimTextField = new JTextField(); isimTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel soyadLabel = new JLabel("Soyad : "); soyadLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField soyadTextField = new JTextField(); soyadTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel passwordLabel = new JLabel("Password : "); passwordLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; password = randomPassword(); JTextField passwordTextField = new JTextField(password); passwordTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel departmanLabel = new JLabel("Departman : "); departmanLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; String[] departmanIsim = {"Seçiniz", "Satış Pazarlama", "Teknoloji", "Muhasebe", "Güvenlik", "Yiyecek/İçecek", "Müşteri İlişkileri", "Ön Büro"}; departmanCombo = new JComboBox(departmanIsim); departmanCombo.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel mailBoxKotasiLabel = new JLabel("Mailbox Kotası : "); mailBoxKotasiLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; String[] mailBoxKota = {"Kota Seçiniz", "500 MB", "1 GB", "3 GB", "5 GB", "10 GB"}; mailBoxKotaCombo = new JComboBox(mailBoxKota); mailBoxKotaCombo.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel alternatifMailLabel = new JLabel("Alternatif Mail : "); alternatifMailLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField alternatifMailTextField = new JTextField(); alternatifMailTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart + xFark; y = y + (yFark*2); JButton mailOusturButon = new JButton("Şirket Maili Oluştur"); mailOusturButon.setBounds(x, y, textFieldGenislik, ortakYukseklik); mailOusturButon.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { anaPanel.removeAll(); // Formdan alınan bilgileri kullanarak mail oluşturma işlemi burada yapılabilir. // Örnek olarak: isim = isimTextField.getText(); soyad = soyadTextField.getText(); departman = (String) departmanCombo.getSelectedItem(); int departmanInteger = (int) departmanCombo.getSelectedIndex(); switch (departmanInteger) { case 0: sirketMailOnEk = "free"; break; case 1: sirketMailOnEk = "sale"; break; case 2: sirketMailOnEk = "tech"; break; case 3: sirketMailOnEk = "acc"; break; case 4: sirketMailOnEk = "sec"; break; case 5: sirketMailOnEk = "fb"; break; case 6: sirketMailOnEk = "cr"; break; case 7: sirketMailOnEk = "fof"; break; } int mailBoxKapasitesiInteger = (int) mailBoxKotaCombo.getSelectedIndex(); switch (mailBoxKapasitesiInteger) { case 0 : mailBoxKapasitesi = 0; break; case 1 : mailBoxKapasitesi = 500; break; case 2 : mailBoxKapasitesi = 1024; break; case 3 : mailBoxKapasitesi = 3072; break; case 4 : mailBoxKapasitesi = 5120; break; case 5 : mailBoxKapasitesi = 10240; break; } alternatifMail = alternatifMailTextField.getText(); // Şirket içi mail oluşturma ve sonuçları gösterme işlemi burada yapılabilir. // Örnek olarak: String sirketMail = isim.toLowerCase() + "." + soyad.toLowerCase() + "@" + sirketMailOnEk + "." +sirketMailUzantisi; String sirketMailKota = "" + mailBoxKapasitesi; System.out.println("isim = " + isim); System.out.println("soyad = " + soyad); System.out.println("departman = " + departman); System.out.println("Mail Kota = " + mailBoxKapasitesi); System.out.println("Sirket Mail = " + sirketMail); System.out.println("Mail Kota = " + sirketMailKota); System.out.println("Alternatif = " + alternatifMail); // Mail formundan geen bilgileri // sonuç paneline gonderiyoruz. sonucPanelGoster[0] = "mailOlusturuldu.jpg"; sonucPanelGoster[1] = isim + " " + soyad; // isim soyad text field. sonucPanelGoster[2] = departman; sonucPanelGoster[3] = sirketMail; sonucPanelGoster[4] = "" + sirketMailKota + " MB"; sonucPanelGoster[5] = password; sonucPanelGoster[6] = alternatifMail; anaPanel.add(infoPanel()); anaPanel.add(sonucPanel(sonucPanelGoster)); anaPanel.revalidate(); anaPanel.repaint(); } }); panel.add(isimLabel); panel.add(isimTextField); panel.add(soyadLabel); panel.add(soyadTextField); panel.add(passwordLabel); panel.add(passwordTextField); panel.add(departmanLabel); panel.add(departmanCombo); panel.add(mailBoxKotasiLabel); panel.add(mailBoxKotaCombo); panel.add(alternatifMailLabel); panel.add(alternatifMailTextField); panel.add(mailOusturButon); panel.setBounds(25, 25, 400, 450); return panel; } public static JPanel sonucPanel(String[] sonucPanelInfo) { JPanel panel = new JPanel(); panel.setLayout(null); panel.setBackground(new Color(169, 203, 217)); panel.add(mailOlusturulduPanel(sonucPanelInfo[0])); int xStart = 10; int x = xStart; int y = 150; int xFark = 100; int yFark = 30; int labelGenislik = 150; int textFieldGenislik = 280; int ortakYukseklik = 30; JLabel isimLabel = new JLabel("İsim : "); isimLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField isimTextFieldSonuc = new JTextField(sonucPanelInfo[1]); isimTextFieldSonuc.setEditable(false); isimTextFieldSonuc.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel departmanLabel = new JLabel("Departman : "); departmanLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField departmanTextField = new JTextField(sonucPanelInfo[2]); departmanTextField.setEditable(false); departmanTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel sirketMailLabel = new JLabel("Sirket Mail : "); sirketMailLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; sirketMailTextField = new JTextField(sonucPanelInfo[3]); sirketMailTextField.setEditable(false); sirketMailTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel sirketMailKotaLabel = new JLabel("Mail Kotasi : "); sirketMailKotaLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; sirketMailKotaTextField = new JTextField(sonucPanelInfo[4]); sirketMailKotaTextField.setEditable(false); sirketMailKotaTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel passwordLabel = new JLabel("Password : "); passwordLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField passwordTextField = new JTextField(sonucPanelInfo[5]); passwordTextField.setEditable(false); passwordTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart; y = y + yFark; JLabel alternatifMailLabel = new JLabel("Alternatif Mail : "); alternatifMailLabel.setBounds(x, y, labelGenislik, ortakYukseklik); x = x + xFark; JTextField alternatifMailTextField = new JTextField(sonucPanelInfo[6]); alternatifMailTextField.setEditable(false); alternatifMailTextField.setBounds(x, y, textFieldGenislik, ortakYukseklik); x = xStart + xFark; y = y + (yFark*2); JButton mailFormTemizleButon = new JButton("Mail Formunu Temizle"); mailFormTemizleButon.setBounds(x, y, textFieldGenislik, ortakYukseklik); mailFormTemizleButon.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { anaPanel.removeAll(); // Formdaki tüm JTextField'ların içeriğini temizliyoruz. sonucPanelGoster[0] = "mailBekleniyor.jpg"; sonucPanelGoster[1] = "İsim Soyad"; sonucPanelGoster[2] = "Departman"; sonucPanelGoster[3] = "Şirket mail"; sonucPanelGoster[4] = " 0 MB"; sonucPanelGoster[5] = "Şifre"; sonucPanelGoster[6] = "Alternatif mail"; anaPanel.add(infoPanel()); anaPanel.add(sonucPanel(sonucPanelGoster)); anaPanel.revalidate(); anaPanel.repaint(); } }); panel.add(isimLabel); panel.add(isimTextFieldSonuc); panel.add(departmanLabel); panel.add(departmanTextField); panel.add(sirketMailLabel); panel.add(sirketMailTextField); panel.add(sirketMailKotaLabel); panel.add(sirketMailKotaTextField); panel.add(passwordLabel); panel.add(passwordTextField); panel.add(alternatifMailLabel); panel.add(alternatifMailTextField); panel.add(mailFormTemizleButon); panel.setBounds(475, 25, 400, 450); return panel; } public static String randomPassword() { String passwordSet = "QWERTYUIOPASDFGHJKLZXCVBNM0123456789!#$%&*"; char[] password = new char[passwordLength]; for (int i=0 ; i<passwordLength ; i++) { int rastgele = (int) (Math.random() * passwordSet.length()); password[i] = passwordSet.charAt(rastgele); } String pass = new String(password); return pass; } public static void main(String[] args) { new MailHesap(); } }