JavaSwing replacing the CheckBox with a ComboBox

تعرفه تبلیغات در سایت
عنوان عکس
عنوان عکس
عنوان عکس
عنوان عکس
عنوان عکس

آرشیو مطالب

جستجوگر

یافته ها در جستجو

    امکانات وب

    برچسب ها

    Vote count: 0

    I know that that's not the way to do it but I have to submit the GUI Applet after couple of hours and I just can't fix it myself. I've done everything else except adding a ComboBox with a "Male" & "Female". How can I just replace the CheckBox with an uneditable combo box and still make the "Send" button show the choice? That's my code:

        package MyApplet;
    
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import javax.swing.ButtonGroup;
    import javax.swing.JApplet;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JTextField;
    import javax.swing.JRadioButton;
    import javax.swing.JCheckBox;
    import javax.swing.JButton;
    
    public class MyApplet extends JApplet {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        protected JTextField mTxtName;
        //protected JTextField mTxtEmail;
    
        protected JRadioButton mRdbone;
        protected JRadioButton mRdbtwo;
        protected JRadioButton mRdbthree;
        protected JRadioButton mRdbfour;
        protected JRadioButton mRdbfive;
        protected ButtonGroup mRdbGroup;
    
        protected JCheckBox mChbSport;
        protected JCheckBox mChbTV;
        protected JCheckBox mChbMusic;
    
        protected JButton mBtnSend;
        protected JButton mBtnClear;
    
        /**
         * Create the applet.
         */
        public MyApplet() {
    
            mTxtName = new JTextField();
            //mTxtEmail = new JTextField();
    
            mRdbone = new JRadioButton("10-20");    
            mRdbtwo = new JRadioButton("21-30");
            mRdbthree = new JRadioButton("31-40");  
            mRdbfour = new JRadioButton("41-50");
            mRdbfive = new JRadioButton("51-"); 
    
            mRdbGroup = new ButtonGroup();
    
            mChbSport = new JCheckBox("Sport"); 
            mChbTV = new JCheckBox("TV");
            mChbMusic = new JCheckBox("Music");
    
            mBtnSend = new JButton("Send");
            mBtnClear = new JButton("Clear");
    
        }
    
        @Override
        public void init()
        {
            super.init();
    
            getContentPane().setLayout(null);
    
            JLabel lblEnterName = new JLabel("Enter name:");
            lblEnterName.setBounds(12, 12, 92, 15);
            getContentPane().add(lblEnterName);
    
            //JLabel lblEnterEmail = new JLabel("Enter e-mail:");
            //lblEnterEmail.setBounds(12, 39, 92, 15);
            //getContentPane().add(lblEnterEmail);
    
            JLabel lblEnterYourGender = new JLabel("Enter your age:");
            lblEnterYourGender.setBounds(12, 80, 140, 15);
            getContentPane().add(lblEnterYourGender);
    
            JLabel lblEnterYourHobby = new JLabel("You are:");
            lblEnterYourHobby.setBounds(12, 167, 140, 15);
            getContentPane().add(lblEnterYourHobby);
    
            mTxtName.setBounds(160, 10, 114, 19);
            getContentPane().add(mTxtName);
            mTxtName.setColumns(10);
    
            //mTxtEmail.setBounds(160, 37, 114, 19);
            //getContentPane().add(mTxtEmail);
            //mTxtEmail.setColumns(10);
    
            mRdbone.setBounds(160, 40, 149, 23);
            getContentPane().add(mRdbone);
            mRdbone.setActionCommand("10-20");
            mRdbone.setSelected(true);
    
            mRdbtwo.setBounds(160, 60, 149, 23);
            getContentPane().add(mRdbtwo);
            mRdbtwo.setActionCommand("21-30");
    
            mRdbthree.setBounds(160, 80, 149, 23);
            getContentPane().add(mRdbthree);
            mRdbthree.setActionCommand("31-40");
    
            mRdbfour.setBounds(160, 100, 149, 23);
            getContentPane().add(mRdbfour);
            mRdbfour.setActionCommand("41-50");
    
            mRdbfive.setBounds(160, 120, 149, 23);
            getContentPane().add(mRdbfive);
            mRdbfive.setActionCommand("50-");
    
            mRdbGroup.add(mRdbone);
            mRdbGroup.add(mRdbtwo);
            mRdbGroup.add(mRdbthree);
            mRdbGroup.add(mRdbfour);
            mRdbGroup.add(mRdbfive);
    
            mChbSport.setBounds(160, 136, 129, 23);
            getContentPane().add(mChbSport);
    
            mChbTV.setBounds(160, 163, 129, 23);
            getContentPane().add(mChbTV);
    
            mChbMusic.setBounds(160, 190, 129, 23);
            getContentPane().add(mChbMusic);
    
            mBtnSend.setBounds(35, 227, 117, 25);
            getContentPane().add(mBtnSend);
    
            mBtnClear.setBounds(160, 227, 117, 25);
            getContentPane().add(mBtnClear);
    
            mBtnSend.addActionListener(new ActionListener()
            {
                public void actionPerformed(ActionEvent e)
                {
                    OnBtnSendClicked(e);  
                }
            });
    
            mBtnClear.addActionListener(new ActionListener()
            {
                public void actionPerformed(ActionEvent e)
                {
                    OnBtnClearClicked(e);  
                }
            });
    
            this.getRootPane().setDefaultButton(mBtnSend);
        }
    
        protected void CLearControls()
        {
            mTxtName.setText("");
            //mTxtEmail.setText("");
    
            mRdbone.setSelected(true);
    
            mChbSport.setSelected(false);
            mChbTV.setSelected(false);
            mChbMusic.setSelected(false);
    
        }
    
        protected boolean Validate()
        {
            if (mTxtName.getText().trim().isEmpty())
            {
                JOptionPane.showMessageDialog(this, "Please enter name");
                mTxtName.requestFocus();
                return false;
            }
    
            //if (mTxtEmail.getText().trim().isEmpty())
            //{
            //  JOptionPane.showMessageDialog(this, "Please enter E-mail");
            //  mTxtEmail.requestFocus();
            //  return false;
            //}
    
            if (mRdbGroup.getSelection() == null )
            {
                JOptionPane.showMessageDialog(this, "Please choose you age group");
                mRdbone.requestFocus();
                return false;
            }
    
            return true;
        }
    
        protected void OnBtnSendClicked(ActionEvent e)
        {
            if (!Validate())
                return;
    
            String strMessage = "";
            strMessage += ("Name: "+ mTxtName.getText() + "n");
            //strMessage += ("E-mail: " + mTxtEmail.getText() + "n");
            strMessage += ("Gender: " + mRdbGroup.getSelection().getActionCommand() + "n");
    
            String strHobies = "";
            strHobies += mChbSport.isSelected() ? "Sport " : "";
            strHobies += mChbTV.isSelected() ? "TV " : "";
            strHobies += mChbMusic.isSelected() ? "Music " : "";
            if (strHobies.isEmpty())
                strHobies = "None";
    
            strMessage += ("Hobies: " + strHobies + "n");
    
            JOptionPane.showMessageDialog(this, strMessage);
        }
    
        protected void OnBtnClearClicked(ActionEvent e)
        {
            CLearControls();
    
            mTxtName.requestFocus();
        }
    
    }
    

    GUI

    asked 1 min ago

    نویسنده : استخدام کار بازدید : 56 تاريخ : پنجشنبه 28 ارديبهشت 1396 ساعت: 9:08
    برچسب‌ها :

    خبرنامه

    عضویت

    نام کاربري :
    رمز عبور :