[Swing] إنشاء زر دائري make Round JButtons

اذهب الى الأسفل

[Swing] إنشاء زر دائري make Round JButtons Empty [Swing] إنشاء زر دائري make Round JButtons

مُساهمة من طرف 1zaza في الأربعاء فبراير 20, 2019 10:29 am

الكود التالى يقوم بانشاء زر دائري 

الكود:


import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
import java.awt.event.*;
 
public class RoundButton extends JButton {
 
  public RoundButton(String label) {
    super(label);
 
    setBackground(Color.lightGray);
    setFocusable(false);
 
    /*
    هذه التصريحات تكبير الزر بحيث
      يصبح دائرة بدلا من بيضاوي
    */
    Dimension size = getPreferredSize();
    size.width = size.height = Math.max(size.width, size.height);
    setPreferredSize(size);
 
    /*
    تؤدي هذالاسلوب إلى عدم رسم الخلفية.
      هذا يسمح لنا برسم خلفية مستديرة.
    */
    setContentAreaFilled(false);
  }
 
  protected void paintComponent(Graphics g) {
    if (getModel().isArmed()) {
      g.setColor(Color.gray);
    } else {
      g.setColor(getBackground());
    }
    g.fillOval(0, 0, getSize().width - 1, getSize().height - 1);
 
    super.paintComponent(g);
  }
 
  protected void paintBorder(Graphics g) {
    g.setColor(Color.darkGray);
    g.drawOval(0, 0, getSize().width - 1, getSize().height - 1);
  }
 
  // Hit detection.
  Shape shape;
 
  public boolean contains(int x, int y) {
    // إذا تغير حجم الزر  فقم بعمل كائن شكل جديد.
    if (shape == null || !shape.getBounds().equals(getBounds())) {
      shape = new Ellipse2D.Float(0, 0, getWidth(), getHeight());
    }
    return shape.contains(x, y);
  }
 
  public static void main(String[] args) {
 
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Rounded Button Example");
    frame.setLayout(new FlowLayout());
 
    JButton b1 = new RoundButton("B1");
    JButton b2 = new RoundButton("B2");
 
    frame.add(b1);
    frame.add(b2);
 
    frame.setSize(300, 150);
    frame.setVisible(true);
  }
}


[Swing] إنشاء زر دائري make Round JButtons Output
1zaza
1zaza
...
...

تاريخ التسجيل : 18/11/2018
المساهمات : 32
النقاط : 50
التقيم : 0
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

[Swing] إنشاء زر دائري make Round JButtons Empty رد: [Swing] إنشاء زر دائري make Round JButtons

مُساهمة من طرف أحمد مناع في الجمعة مارس 15, 2019 7:31 am

احسنت شكرا جزيلا

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
أحمد مناع
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 980
النقاط : 201761
التقيم : 117
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

[Swing] إنشاء زر دائري make Round JButtons Empty رد: [Swing] إنشاء زر دائري make Round JButtons

مُساهمة من طرف زهراء في الثلاثاء أكتوبر 15, 2019 7:51 pm

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] كتب:احسنت شكرا جزيلا

و ماذا عن هذا التصميم استاذ أحمد 

[Swing] إنشاء زر دائري make Round JButtons 744894630
زهراء
زهراء
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 404
النقاط : 684
التقيم : 54
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

[Swing] إنشاء زر دائري make Round JButtons Empty رد: [Swing] إنشاء زر دائري make Round JButtons

مُساهمة من طرف أحمد مناع في الجمعة أكتوبر 18, 2019 8:13 am

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] كتب:
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] كتب:احسنت شكرا جزيلا

و ماذا عن هذا التصميم استاذ أحمد 

[Swing] إنشاء زر دائري make Round JButtons 744894630

حينما يتم الانتهاء منه سيتم عرض السورس كود بالكامل بالمنتدى ...مازلت اعمل فية

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
أحمد مناع
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 980
النقاط : 201761
التقيم : 117
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى