menusearch
javapro.ir

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

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

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

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


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

 


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

توصیفسازنده

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

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

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


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


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

JRadioButton(String s, boolean select ed)




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

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

void setText(

String s)

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

String getText()

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

void setEnabled(

boolean b)

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

void setIcon(

Icon b)

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

void

addActionListener(

ActionListener a)



مثال:

package java like  ;
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_java like  ;

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.is select ed()) {

           l.setText("You are Male.");
       }
       if (rb2.is select ed()) {

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

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

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



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

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

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


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


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

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

لینک دانلود

 

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


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


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

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

0 نظر