كورس Java swing بالعربي - الكلاس JPasswordField

الكلاس JPasswordField

مقدمة  الكلاس JPasswordField يستخدم لإضافة مربع نص خاص لإدخال كلمات المرور (Password Field) في واجهة المستخدم, حيث أنه يقوم بإخفاء الأحرف التي يكتبها المستخدم.


بنا الكلاس JPasswordField 

public class JPasswordField
extends JTextField
	

كونستركتورات الكلاس JPasswordField

الجدول التالي يحتوي على كونستركتورات الكلاس JPasswordField.

الكونستركتور مع تعريفه
public JPasswordField() ينشئ كائن من الكلاس JPasswordField يمثل Password Field فارغ.
public JPasswordField(String text) ينشئ كائن من الكلاس JPasswordField يمثل Password Field فيه نص.
مكان الباراميتر text نمرر النص الذي نريد وضعه بداخل الـ Password Field.
public JPasswordField(int columns) ينشئ كائن من الكلاس JPasswordField يمثل Password Field فارغ يمكنه أن يحتوي على عدد محدد من الأحرف.
مكان الباراميتر columns نمرر رقم يمثل عدد الأحرف الأقصى التي يمكن إدخالها في الـ Password Field.
public JPasswordField(String text, int columns) ينشئ كائن من الكلاس JPasswordField يمثل Password Field فيه نص و يمكنه أن يحتوي على عدد محدد من الأحرف.
  • مكان الباراميتر text نمرر النص الذي نريد وضعه بداخل الـ Password Field.

  • مكان الباراميتر columns نمرر رقم يمثل عدد الأحرف الأقصى التي يمكن إدخالها في الـ Password Field.

دوال الكلاس JPasswordField

الجدول التالي يحتوي على بعض دوال الكلاس JPasswordField.

الدالة مع تعريفها
public char[] getPassword() ترجع نص كائن الـ JPasswordField الذي قام بإستدعائها كـ String كمصفوفة أحرف char.
public void setPassword(String text) تستخدم لتبديل نص كائن الـ JPasswordField الذي قام بإستدعائها.
مكان الباراميتر text نضع النص الجديد.
public void addActionListener(ActionListener al) تستخدم لتنفيذ أوامر معينة عند النقر داخل كائن الـ JPasswordField الذي قام بإستدعائها.
مكان الباراميتر al نضع كائن من الكلاس ActionListener و نفعل بداخله Override لدالة إسمها actionPerformed(ActionEvent ae).
public void removeActionListener(ActionListener al) تستخدم لعدم تنفيذ أوامر الدالة addActionListener() من جديد عند النقر بداخل كائن الـ JPasswordField الذي قام بإستدعائها.
public void setEchoChar(char c) تستخدم لإظهار أحرف كائن الـ JPasswordField الذي قام بإستدعائها أو لإظهار حرف آخر بدل النقطة التي توضع إفتراضياً مكان أي حرف تقوم بكاتبه.

مكان الباراميتر c نضع الحرف الجديد الذي نريده أن يظهر بدلاً من النقطة.

في حال أردت إظهار الأحرف الموجودة في كائن الـ JPasswordField, يجب تمرير القيمة 0 كحرف و ليس كرقم.
أي يجب تمرير الحرف صفر لها مكان الباراميتر c كالتالي:

  • الطريقة الأولى: setEchoChar('\0').

  • الطريقة الثانية: setEchoChar((char)0).

أمثلة شاملة في الكلاس JPasswordField 


 طريقة إنشاء JPasswordField

المثال التالي يعلمك طريقة إنشاء كائن من الكلاس JPasswordField و إضافته في النافذة.


مثال طريقة إنشاء كائن من الكلاس JPasswordField و إضافته في النافذة

Main.java
      import javax.swing.JFrame;
      import javax.swing.JPasswordField;

      public class Main {

      public static void main(String[] args) {

      JFrame frame = new JFrame("JPasswordField demo");      // أي قمنا بإنشاء نافذة مع وضع عنوان لها JFrame هنا أنشأنا كائن من الكلاس
      frame.setSize(300, 250);                               // هنا قمنا بتحديد حجم النافذة. عرضها 300 و طولها 250
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  // هنا جعلنا زر الخروج من النافذة يغلق البرنامج
      frame.setLayout(null);                                 // في النافذة بنفسنا Password Field لذلك سنقوم بتحديد مكان الـ Layout Manager أي لم نستخدم أي null هنا وضعنا

      JPasswordField passwordField = new JPasswordField();   // Password Field أي قمنا بإنشاء JPasswordField هنا أنشأنا كائن من الكلاس
      passwordField.setBounds(40, 40, 200, 30);              // frame في الـ Password Field هنا قمنا بتحديد حجم و موقع الـ

      frame.add(passwordField);                              // frame في الـ Password Field هنا أضفنا الـ

      frame.setVisible(true);                                // هنا جعلنا النافذة مرئية

      }

      }
    

ستظهر لك النافذة التالية عند التشغيل.

قم بإدخال أي نص في الـ Password Field ثم لاحظ كيف سيتم إظهار نقاط بدلاً من الأحرف التي تدخلها.

طريقة إضافة JPasswordField في ال JFrame


 طريقة تبديل النقاط التي تظهر بداخل الـ JPasswordField بأحرف أو رموز أو أرقام أخرى

المثال التالي يعلمك طريقة تبديل النقاط التي تظهر بداخل كائن الـ JPasswordField بأحرف, رموز أو أرقام أخرى.


مثال طريقة تبديل النقاط التي تظهر بداخل كائن الـ JPasswordField بأحرف, رموز أو أرقام أخرى.

Main.java
      import javax.swing.JFrame;
      import javax.swing.JPasswordField;

      public class Main {

      public static void main(String[] args) {

      JFrame frame = new JFrame("JPasswordField demo");      // أي قمنا بإنشاء نافذة مع وضع عنوان لها JFrame هنا أنشأنا كائن من الكلاس
      frame.setSize(300, 250);                               // هنا قمنا بتحديد حجم النافذة. عرضها 300 و طولها 250
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  // هنا جعلنا زر الخروج من النافذة يغلق البرنامج
      frame.setLayout(null);                                 // في النافذة بنفسنا Password Field لذلك سنقوم بتحديد مكان الـ Layout Manager أي لم نستخدم أي null هنا وضعنا

      JPasswordField passwordField = new JPasswordField();   // Password Field أي قمنا بإنشاء JPasswordField هنا أنشأنا كائن من الكلاس
      passwordField.setBounds(40, 40, 200, 30);              // frame في الـ Password Field هنا قمنا بتحديد حجم و موقع الـ
      passwordField.setEchoChar('?');                        // frame في الـ Password Field هنا قمنا بتغير الحرف الذي سيظهر بداخل الـ

      frame.add(passwordField);                              // frame في الـ Password Field هنا أضفنا الـ

      frame.setVisible(true);                                // هنا جعلنا النافذة مرئية

      }

      }
    

ستظهر لك النافذة التالية عند التشغيل.

قم بإدخال أي نص في الـ Password Field ثم لاحظ كيف سيتم وضع علامات إستفهام بدلاً من الأحرف التي تدخلها.

إظهار أحرف أو رموز بدل النقاط في ال JPasswordField في جافا


 Swing طريقة إظهار الحروف التي يتم إدخالها في الـ JPasswordField

المثال التالي يعلمك طريقة إظهار الحروف التي يتم إدخالها في الـ Password Field .


مثال طريقة إظهار الحروف التي يتم إدخالها في الـ Password Field .

Main.java
      import javax.swing.JFrame;
      import javax.swing.JPasswordField;

      public class Main {

      public static void main(String[] args) {

      JFrame frame = new JFrame("JPasswordField demo");      // أي قمنا بإنشاء نافذة مع وضع عنوان لها JFrame هنا أنشأنا كائن من الكلاس
      frame.setSize(300, 250);                               // هنا قمنا بتحديد حجم النافذة. عرضها 300 و طولها 250
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  // هنا جعلنا زر الخروج من النافذة يغلق البرنامج
      frame.setLayout(null);                                 // في النافذة بنفسنا Password Field لذلك سنقوم بتحديد مكان الـ Layout Manager أي لم نستخدم أي null هنا وضعنا

      JPasswordField passwordField = new JPasswordField();   // Password Field أي قمنا بإنشاء JPasswordField هنا أنشأنا كائن من الكلاس
      passwordField.setBounds(40, 40, 200, 30);              // frame في الـ Password Field هنا قمنا بتحديد حجم و موقع الـ
      passwordField.setEchoChar('\0');                       // frame في الـ Password Field هنا قمنا بإظهار أي أحرف يتم إدخالها في الـ

      frame.add(passwordField);                              // frame في الـ Password Field هنا أضفنا الـ

      frame.setVisible(true);                                // هنا جعلنا النافذة مرئية

      }

      }
    

ستظهر لك النافذة التالية عند التشغيل.

قم بإدخال أي نص في الـ Password Field ثم لاحظ أنه لن يتم إخفاء الأحرف التي تدخلها.

إظهار النص المدخل في ال JPasswordField في جافا


 طريقة الحصول على النص الموجود في الـ Password Field عند النقر على Button

المثال التالي يعلمك طريقة الحصول على النص الموجود في الـ Password Field عند النقر على Button.

المثال عبارة واجهة تسجيل دخول مستخدم فيها ثلاثة Labels, Text Field, Password Field و Button.
عند النقر على الـ Button سيتم جمع القيم المدخلة في الـ Text Field و الـ Password Fields.


كورس  تعلم Java Swing  بالعربي

أفضل كورس كامل  لتعلم Java swing  بالعربي  .