Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.BorderLayout;
- import java.awt.EventQueue;
- import javax.swing.JFrame;
- import javax.swing.JPanel;
- import javax.swing.border.EmptyBorder;
- import javax.swing.JLabel;
- import javax.swing.JOptionPane;
- import java.awt.Font;
- import javax.swing.JTextField;
- import java.awt.Color;
- import javax.swing.JRadioButton;
- import javax.swing.JComboBox;
- import javax.swing.DefaultComboBoxModel;
- import javax.swing.ButtonGroup;
- import javax.swing.JButton;
- import java.awt.event.ActionListener;
- import java.awt.event.ActionEvent;
- import javax.swing.JToggleButton;
- public class Deducciones extends JFrame {
- private JPanel contentPane;
- private JTextField sueldo;
- /**
- * Launch the application.
- */
- public static void main(String[] args) {
- EventQueue.invokeLater(new Runnable() {
- public void run() {
- try {
- Deducciones frame = new Deducciones();
- frame.setVisible(true);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- });
- }
- /**
- * Create the frame.
- */
- public Deducciones() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setBounds(100, 100, 556, 470);
- contentPane = new JPanel();
- contentPane.setBackground(Color.PINK);
- contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
- setContentPane(contentPane);
- contentPane.setLayout(null);
- JLabel lblIngreseSuSueldo = new JLabel("Ingrese su sueldo nominal");
- lblIngreseSuSueldo.setFont(new Font("Tahoma", Font.BOLD, 18));
- lblIngreseSuSueldo.setBounds(29, 67, 262, 63);
- contentPane.add(lblIngreseSuSueldo);
- sueldo = new JTextField();
- sueldo.setBounds(291, 91, 125, 20);
- contentPane.add(sueldo);
- sueldo.setColumns(10);
- JPanel panelhijos = new JPanel();
- panelhijos.setBackground(new Color(221, 160, 221));
- panelhijos.setBounds(29, 141, 112, 110);
- contentPane.add(panelhijos);
- panelhijos.setLayout(null);
- JLabel lblTieneHijos = new JLabel("Tiene hijos");
- lblTieneHijos.setFont(new Font("Tahoma", Font.BOLD, 14));
- lblTieneHijos.setBounds(23, 0, 149, 35);
- panelhijos.add(lblTieneHijos);
- JRadioButton sihijos = new JRadioButton("Si");
- sihijos.setBounds(23, 53, 49, 23);
- panelhijos.add(sihijos);
- JRadioButton nohijos = new JRadioButton("No");
- nohijos.setBounds(23, 79, 49, 23);
- panelhijos.add(nohijos);
- JLabel deduccionirpf = new JLabel("Deduccion por IRPF: ");
- deduccionirpf.setFont(new Font("Tahoma", Font.BOLD, 13));
- deduccionirpf.setBounds(225, 190, 243, 29);
- contentPane.add(deduccionirpf);
- JLabel deduccionacargo = new JLabel("Deduccion por personas a cargo: ");
- deduccionacargo.setFont(new Font("Tahoma", Font.BOLD, 13));
- deduccionacargo.setBounds(225, 230, 305, 29);
- contentPane.add(deduccionacargo);
- JLabel deducciontotal = new JLabel("Deduccion total:");
- deducciontotal.setFont(new Font("Tahoma", Font.BOLD, 13));
- deducciontotal.setBounds(225, 270, 230, 29);
- contentPane.add(deducciontotal);
- JLabel sueldoliquido = new JLabel("Sueldo liquido:");
- sueldoliquido.setFont(new Font("Tahoma", Font.BOLD, 13));
- sueldoliquido.setBounds(225, 310, 230, 29);
- contentPane.add(sueldoliquido);
- ButtonGroup miGrupo = new ButtonGroup();
- miGrupo.add(sihijos);
- miGrupo.add(nohijos);
- JPanel panelmagico = new JPanel();
- panelmagico.setVisible(false);
- panelmagico.setBounds(23, 96, 153, 85);
- panelhijos.add(panelmagico);
- panelmagico.setLayout(null);
- JComboBox dieciocho = new JComboBox();
- dieciocho.setBounds(10, 11, 121, 20);
- panelmagico.add(dieciocho);
- dieciocho.setModel(new DefaultComboBoxModel(new String[] {"-", "Menores a 18 ", "Mayores a 18"}));
- JComboBox discapacidad = new JComboBox();
- discapacidad.setBounds(10, 42, 121, 20);
- panelmagico.add(discapacidad);
- discapacidad.setModel(new DefaultComboBoxModel(new String[] {"-", "Sin discapacidad", "Con discapacidad"}));
- sihijos.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- panelmagico.setVisible(true);
- nohijos.setBounds(23, 195, 49, 23);
- panelhijos.setBounds(29, 141, 186, 258);
- }
- });
- nohijos.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- panelmagico.setVisible(false);
- nohijos.setBounds(23, 79, 49, 23);
- panelhijos.setBounds(29, 141, 138, 111);
- }
- });
- JButton enviar = new JButton("Enviar");
- enviar.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- try {
- if(sihijos.isSelected()==false && nohijos.isSelected()==false) {
- JOptionPane.showMessageDialog(null, "Ingrese si tiene o no hijos");
- }else {
- if(sihijos.isSelected()) {
- if(dieciocho.getSelectedIndex()==0) {
- JOptionPane.showMessageDialog(null, "Seleccione si sus hijos son mayores o no");
- }
- if(discapacidad.getSelectedIndex()==0) {
- JOptionPane.showMessageDialog(null, "Seleccione si sus hijos son discapacitados o no");
- }}
- }
- deduccionirpf.setText("Deduccion por IRPF: "+String.valueOf(IRPF(sueldo.getText())));
- deduccionacargo.setText("Deduccion por Personas a cargo: "+String.valueOf(acargo(sueldo.getText(), sihijos, nohijos, dieciocho, discapacidad)));
- deducciontotal.setText("Deduccion total :"+String.valueOf(IRPF(sueldo.getText())+acargo(sueldo.getText(), sihijos, nohijos, dieciocho, discapacidad))) ;
- sueldoliquido.setText("Sueldo líquido :"+String.valueOf(((IRPF(sueldo.getText())+acargo(sueldo.getText(), sihijos, nohijos, dieciocho, discapacidad)))+(Integer.parseInt(sueldo.getText()))));
- }catch(Exception e) {
- JOptionPane.showMessageDialog(null, "INGRESE SUELDO VALIDO");}
- }
- });
- enviar.setBounds(263, 141, 89, 23);
- contentPane.add(enviar);
- }
- public static int IRPF(String sueldonominal) {
- int resultado;
- if(Integer.parseInt(sueldonominal)<62310) {
- resultado=(Integer.parseInt(sueldonominal)*10)/100;
- }
- else {
- resultado=(Integer.parseInt(sueldonominal)*8)/100;
- }
- return resultado;
- }
- public static int acargo(String sueldonominal, JRadioButton sihijos, JRadioButton nohijos, JComboBox dieciocho, JComboBox discapacidad) {
- int resultado=0;
- if (nohijos.isSelected()) {
- resultado=0;
- }else { if(discapacidad.getSelectedIndex()==2) {
- resultado=resultado+9000;
- }else {if(dieciocho.getSelectedIndex()==1) {
- resultado=resultado+4500;
- } }}
- return resultado;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement