import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class GolgeYazi {

	public GolgeYazi() {
		
		JFrame frame = new JFrame("JTextField Gölge Yazı | Java Blackboard [106]");
		
		JPanel panel = new JPanel();
		panel.setLayout(null);
		panel.setBackground(new Color(180,150,225));
		panel.setBounds(15,15,470,270);
		
		JLabel baslikLabel = new JLabel("Gölge Yazı");
		baslikLabel.setHorizontalAlignment(0);
		baslikLabel.setFont(new Font("Ubuntu", 1, 25));
		baslikLabel.setBounds(0, 10, 470, 30);
		
		JLabel isimLabel = new JLabel("Ad Soyad : ");
		isimLabel.setHorizontalAlignment(4);
		isimLabel.setBounds(50, 50, 100,30);
		
		JTextField tfisim = new JTextField("isim soyisim giriniz");
		tfisim.setForeground(new Color(166, 166, 166));
		tfisim.setBounds(170, 50, 150, 30);
		
		tfisim.addFocusListener(new FocusAdapter() {
			public void focusGained(FocusEvent e) {
				
				if(tfisim.getText().equals("isim soyisim giriniz")) {
					
					tfisim.setText("");
					tfisim.setForeground(new Color(25, 80, 40));
					
				}
				
			}
			
			public void focusLost(FocusEvent event) {
				
				tfisim.setForeground(Color.red);
			
				String ilkHarf = tfisim.getText().substring(0, 1);
				ilkHarf = ilkHarf.toUpperCase();
				
				String kalanKelime = tfisim.getText().substring(1);
				String isimText = ilkHarf + kalanKelime;
				
				tfisim.setText(isimText);
			}
			
		});
		
		
		JLabel sehirLabel = new JLabel("Şehir : ");
		sehirLabel.setHorizontalAlignment(JLabel.RIGHT);
		sehirLabel.setBounds(50,100, 100, 30);
		
		JTextField tfsehir = new JTextField("şehir giriniz");
		tfsehir.setForeground(new Color(166, 166, 166));
		tfsehir.setBounds(170, 100, 150, 30);
		
		tfsehir.addFocusListener(new FocusAdapter() {
			public void focusGained(FocusEvent e) {
				
				if(tfsehir.getText().equals("şehir giriniz")) {
					
					tfsehir.setText("");
					tfsehir.setForeground(Color.black);
					
				}
				
			}
		});
		
		JLabel meslekLabel = new JLabel("Meslek : ");
		meslekLabel.setHorizontalAlignment(4);
		meslekLabel.setBounds(50, 150, 100, 30);
		
		JTextField tfmeslek = new JTextField("meslek giriniz");
		tfmeslek.setForeground(new Color(166, 166, 166));
		tfmeslek.setBounds(170, 150, 150, 30);
		
		tfmeslek.addFocusListener(new FocusAdapter() {
			public void focusGained(FocusEvent event) {
				
				if(tfmeslek.getText().equals("meslek giriniz")) {
					
					tfmeslek.setText("");
					tfmeslek.setForeground(new Color(50,10,80));
					
				}
				
			}
		});
		
		JButton goster = new JButton("Göster");
		goster.setBounds(340, 150, 100, 30);
		
		JLabel infoLabel = new JLabel();
		infoLabel.setHorizontalAlignment(0);
		infoLabel.setBounds(0, 200, 500, 30);
		
		goster.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent event) {
								
				infoLabel.setText(tfisim.getText() + ", " + tfsehir.getText() + ", " + tfmeslek.getText());
				
				tfisim.setText("isim soyisim giriniz");
				tfsehir.setText("şehir giriniz");
				tfmeslek.setText("meslek giriniz");
				
				tfisim.setForeground(new Color(166, 166, 166));   
				tfsehir.setForeground(new Color(166, 166, 166));  
				tfmeslek.setForeground(new Color(166, 166, 166)); 
				
			}
		});
		
		panel.add(baslikLabel);
		panel.add(isimLabel);
		panel.add(tfisim);
		panel.add(sehirLabel);
		panel.add(tfsehir);
		panel.add(meslekLabel);
		panel.add(tfmeslek);
		panel.add(goster);
		panel.add(infoLabel);
		
		frame.add(panel);
		
		frame.setSize(500,330);
		frame.setLayout(null);
		frame.setLocationRelativeTo(null);
		frame.setResizable(false);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setVisible(true);
	}

}
