menusearch
javapro.ir

♨️ جلسه هشتم - کلاس JRadioButton در جاوا

جستجو
شنبه ۲۳ آذر ۱۳۹۸ | ۱۷:۵۰:۳۲
۱۳۹۶/۳/۸ دوشنبه
(1)
(0)
♨️ جلسه هشتم - کلاس JRadioButton در جاوا
♨️ جلسه هشتم - کلاس JRadioButton در جاوا

از کلاس JRadioButton برای ساخت دکمه های رادیویی در برنامه استفاده می شود. خب دکمه های رادیویی چه شکلی هستند؟ تصویر(1)

آموزش کار با گرافیک در جاوا


•    همان طور که در تصویر(1) مشاهده می کنید RadioButton ها دکمه هایی دایره ای شکل هستند که بر خلاف CheckBox ها تنها می توان یک گزینه از میان چندین گزینه را از میان آنها انتخاب کرد.از دکمه های رادیویی بصورت گسترده در سیستم های امتحانی یا کوئیز و نظرسنجی استفاده می شود.
 

 


سازنده های پرکاربرد کلاس JRadioButton :
 

توصیفسازنده

ایجاد یک دکمه رادیویی unselected بدون متن
unselected: یعنی انتخاب نشده

JRadioButton()
ایجاد یک دکمه رادیویی unselected با متن مشخصJRadioButton(String s)

ایجاد یک دکمه رادیویی با متن مشخص و تعیین نوع selected آن


نوع selected اگر true باشد دکمه رادیویی ما انتخاب شده ایجاد می شود و در غیر این صورت اگر false بود دکمه رادیویی ما غیر انتخاب شده ایجاد می شود.


مثلا در تصویر(1) دکمه رادیویی Bird متن آن را Bird و نوع انتخاب آن true می باشد.دایره سیاه رنگ نشان دهنده انتخاب شدن ان می باشد!!!

JRadioButton(String s, boolean selected)




متدهای پرکاربرد کلاس JRadioButton :
 

توصیفسازنده
تعیین متن برای دکمه رادیویی

void setText(

String s)

متن دکمه رادیویی را برای ما برمیگرداند

String getText()

یکی از متدهای مهم که هر اجزای گرافیکی آن را دارا می باشد. اگر این متد صدا زده شود و مقدار پارامتر آن را false قرار دهیم دکمه رادیویی در فریم نمایش داده نمی شود و اگر true قرار دهیم دکمه رادیویی ما در فریم نمایش داده می شود.

void setEnabled(

boolean b)

برای قرار دادن آیکون روی دکمه رادیویی ما استفاده می شود.

void setIcon(

Icon b)

این متد برای اضاف کردن یک ActionListener به دکمه رادیویی ما استفاده می شود.
اگر خواستیم رویداد ، اکشن و عملیاتی را به دکمه رادیویی خود نسبت دهیم از این متد استفاده می کنیم.

void

addActionListener(

ActionListener a)



مثال:

 
package javalike ;
import javax.swing.*;    
public class RadioButtonExample {    
JFrame f;    
RadioButtonExample(){    
f=new JFrame();     
JRadioButton r1=new JRadioButton("A) Male");    
JRadioButton r2=new JRadioButton("B) Female");    
r1.setBounds(75,50,100,30);    
r2.setBounds(75,100,100,30);    
ButtonGroup bg=new ButtonGroup();    
bg.add(r1);bg.add(r2);    
f.add(r1);f.add(r2);      
f.setSize(300,300);    
f.setLayout(null);    
f.setVisible(true);    
}    
public static void main(String[] args) {    
    new RadioButtonExample();    
}    
 
 
 

خروجی: تصویر(2)

آموزش کار با گرافیک در جاوا

 

•    همان طور که در تصویر(2) مشاهده می کنید ما تنها حق انتخاب یکی از گزینه های A یا B را داریم.

توضیحات:

 

1.    import javax.swing.*;    
2.    public class RadioButtonExample {    
3.    JFrame f;    
4.    RadioButtonExample(){    
5.    f=new JFrame();     
6.    JRadioButton r1=new JRadioButton("A) Male");    
7.    JRadioButton r2=new JRadioButton("B) Female");    
8.    r1.setBounds(75,50,100,30);
9.    r2.setBounds(75,100,100,30);        

     
1.    برای استفاده از کلاس های آماده اجزای گرافیک این پکیج را import می کنیم.


2.    کلاس ما که نامآن با حرف بزرگ باید شروع شود.


3.    تعریف یک متغیر از نوع کلاس JFram


4.    درون سازنده کلاس ،اجزای گرافیکی خود را ایجاد می کنیم.


5.    شی کلاس JFrame را ایجاد می کنیم.


6.    از کلاس  JRadioButton شی به نام r1 ایجاد کرده ایم و متنی را جایگزین پارامتر سازنده آن کرده ایم که این متن در کنار دکمه رادیویی نمایش داده می شود.


7.    مثل مورد 6 عمل کرده ایم


8.    تعیین مختصات و ابعداد دکمه رادیویی r1


9.    تعیین مختصات و ابعداد دکمه رادیویی r2

 

 

ButtonGroup   bg=new   ButtonGroup();
 

•    توضیح این مثال فعلا متوقف می کنیم و کلاس ButtonGroup را بررسی می کنیم و بعد از آن به مثال برمی گردیم:
 

 


کلاس ButtonGroup :
ما بعد از این که دکمه های رادیویی(RadioButton) خود را ایجاد کردیم ، هر دکمه بصورت مستقل می تواند انتخاب شود!!یعنی انتخاب یک گزینه بین چند گزینه وجود ندارد! و همه گزینه هم را می توانیم انتخاب کنیم. مثال تصویر(3)

 

 


دکمه های رادیویی در جاوا

 


در تصویر(3) همان طور که مشاهده می کنید ما تمامی دکمه های رادیویی را انتخاب کرده ایم! که ویژگی یک انتخاب بین چند گزینه دکمه های رادیویی را نقض می کند!!! برای این که این مشکل پیش نیاید باید از کلاس ButtonGroup استفاده کنیم.


اگر از کلاس ButtonGroup استفاده کنیم قابلیت تنها یک انتخاب بین چند گزینه را به دکمه های رادیویی خود می دهیم: تصویر(4)
 

 


دکمه های رادیویی در جاوا
 


همان طور که در تصویر(4) مشاهده می کنید ما تنها حق انتخاب یک گزینه بین چند سه گزینه موجود را داریم.پس در کنار کلاس JRadioButton باید از کلاس ButtonGroup نیز استفاده کنیم.

 


برگردیم به ادامه بررسی مثال:
 

 

ButtonGroup bg=new ButtonGroup();
bg.add(r1);bg.add(r2);
 

•    با شی bg که از نوع کلاس ButtonGroup می باشد متد add را صدا می زنیم و شی های r1 و r2 که از نوع کلاس JRadioButton هستند را جایگزین پارامتر متد می کنیم.


•    متد add برای افزودن دکمه های رادیویی به شی از نوع کلاس ButtonGroup می باشد.با این کار دکمه های رادیویی ما در یک گروهی قرار میگیرند که کاربر تنها حق انتخاب یکی از آنها را دارد.

 

 

1.    f.add(r1);f.add(r2);      
2.    f.setSize(300,300);    
3.    f.setLayout(null);    
4.    f.setVisible(true);    
5.    }
   

1.    افزودن دکمه های رادیویی به فریم


2.    تعیین ابعداد فریم


3.    چون از طرح بندی خاصی فعلا نمیخوایم استفاده کنیم مقدار پارامتر این متد را null قرار داده ایم.


4.    برای نمایش فریم و تمام اجزای گرافیکی خود از این متد استفاده می کنیم.

مثال:

 

package swing_javalike ;

import javax.swing.*;
import java.awt.event.*;

class RadioButtonExample extends JFrame implements ActionListener {
    JRadioButton rb1, rb2;
    JButton b;
    JLabel l;

    RadioButtonExample() {
        rb1 = new JRadioButton("Male");
        rb1.setBounds(100, 50, 100, 30);
        rb2 = new JRadioButton("Female");
        rb2.setBounds(100, 100, 100, 30);
        ButtonGroup bg = new ButtonGroup();
        bg.add(rb1);
        bg.add(rb2);
        l = new JLabel();
        l.setBounds(100, 170, 100, 100);
        b = new JButton("click");
        b.setBounds(100, 150, 80, 30);
        b.addActionListener(this);
        add(l);
        add(rb1);
        add(rb2);
        add(b);
        setSize(300, 300);
        setLayout(null);
        setVisible(true);
    }

    public void actionPerformed(ActionEvent e) {
        if (rb1.isselected()) {

            l.setText("You are Male.");
        }
        if (rb2.isselected()) {

            l.setText("You are Female.");
        }
    }

    public static void main(String args[]) {
        new RadioButtonExample();
    }
}
 
 

خروجی: بعد از اجرای برنامه با انتخاب دکمه رادیویی Male و کلیک کردن روی دکمه  click پیامی در label پایین فریم نمایش داده می شود تصویر(5)



آموزش گرافیک در جاوا

•    تمامی دستوراتی که در این مثال استفاده در این جلسه و جلسات قبل توضیح داده شده است.

هدف ما بهبود کیفیت و کمیت محتوای آموزشی فارسی در زمینه جاوا ست. آرزوی ما توسعه کمی و کیفی محتوای وب فارسی می باشد بطوری که شاهده محتوای زرد و بی کیفیت آزار دهنده در اینترنت نباشیم


پیروز و موفق باشید


 این جلسه آموزشی را می توانید بصورت  کتاب الکترونیکی (PDF شده) در لینک زیر دریافت کنید.
این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)

آموزش آسان و ساده زبان برنامه نویسی جاوا

لینک دانلود

 

آموزش زبان جاواآموزش زبان جاوا


نشر این مطلب با ذکر منبع (لینک سایت) بلامانع است.
برای با خبر شدن از جدیدترین مطالب آموزشی جاوا عضو کانال تلگرام ما شوید.


 

نظرات کاربران
*نام و نام خانوادگی
* پست الکترونیک
* متن پیام

بستن
*نام و نام خانوادگی
* پست الکترونیک
* متن پیام

0 نظر
شرکت سازنده