إستخدم النصوص التوضيحية PlaceHolder فى حقل النص jtextfield
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
إستخدم النصوص التوضيحية PlaceHolder فى حقل النص jtextfield
#PlaceHolder هو مصطلح يشير الى النص الذي يظهر في حقل النص (JTextField ) قبل إدراج المحتوى. وبهذه الطريقة يمكنك أن تشير للمستخدم إلى نوع المحتوى الذي نريد إدراجه في هذا الحقل ، أي أنه يعتبر نوع من المساعدة للمستخدم....

يمكننا إنشاء #PlaceHolder في المكون JTextField في java عن طريق الكتابة فوق طريقة paintComponent لإظهار PlaceHolder عندما يكون حقل النص JTextField فارغًا وإخفاء نص التعليمات بمجرد أن يبدأ المستخدم في الكتابة فيه.
يمكنك ملاحظة أن الفئة اعلاه JCTextField تم تميديها من الفئة JTextField و لننفذها في JFrame على النحو التالي:


يمكننا إنشاء #PlaceHolder في المكون JTextField في java عن طريق الكتابة فوق طريقة paintComponent لإظهار PlaceHolder عندما يكون حقل النص JTextField فارغًا وإخفاء نص التعليمات بمجرد أن يبدأ المستخدم في الكتابة فيه.
- الكود:
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JTextField;
public class JCTextField extends JTextField {
// متغير لتخزين قيمة النص المراد استخدامة
private String placeholder="من فضلك ضع ارقام فقط";
// تحديد لون النص
private Color phColor= getDisabledTextColor();//getDisabledTextColor();
public JCTextField() {
setHorizontalAlignment(JTextField.RIGHT);
setPhColor(phColor);
}
public String getPlaceholder() {
return this.placeholder;
}
public Color getPhColor() {
return phColor;
}
public void setPhColor(Color phColor) {
this.phColor = phColor;
}
public void setPlaceholder(final String s) {
this.placeholder = s;
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
// جملة شرطية للتاكد من ان حقل النص فارغ
if (super.getText().length() > 0 || placeholder == null) {
return;
}
// انشاء كائن الرسم
Graphics2D g2 = (Graphics2D) g;
// تحديد نوع وحجم الخط المستخدم فى النص
g2.setFont(new Font("Arial", Font.ITALIC, 16));
// وضع لون الرسم
g2.setColor(phColor);
// رسم النص بداخل حقل النص
g2.drawString(placeholder, getInsets().left, g.getFontMetrics().getMaxAscent() + getInsets().bottom);
}
}
يمكنك ملاحظة أن الفئة اعلاه JCTextField تم تميديها من الفئة JTextField و لننفذها في JFrame على النحو التالي:
- الكود:
//default
JCTextField jCTextField1 = new JCTextField();
jCTextField1.setLocation(40, 40);
jCTextField1.setPlaceholder("Escribe tu E-Mail");
add(jCTextField1);
//Custom
JCTextField jCTextField2 = new JCTextField();
jCTextField2.setLocation(40, 100);
jCTextField2.setPlaceholder("First Name please");
jCTextField2.setSize( new Dimension(300,56));
jCTextField2.setPhColor( new Color(72,117,210) );
jCTextField2.setFont( new Font("SansSerif",Font.PLAIN, 18) );
add(jCTextField2);

زهراء- ........
- تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة :
الجنس :
رد: إستخدم النصوص التوضيحية PlaceHolder فى حقل النص jtextfield
اشكرك على مجهودك @زهراء
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» عملية تجميل الأذن الوطواطية| تجميل الأذن الوطواطية بدون جراحة|دكتور نادي صقر
» عملية تجميل الأذن الوطواطية: تجميل الأذن الوطواطية بدون جراحة
» شفط دهون الذقن المزدوجة | جراح تجميل في الكويت
» شفط دهون الذقن المزدوجة | أفضل جراح تجميل في الكويت
» شركة نقل عفش وأثاث في الكويت
» افضل فني صحي بالكويت
» أفضل موقع عربي للحصول على منح دراسية ودورات مجانية وفرص عمل
» مشكلة عند تشغيل الفيجوال بيسيك
» أفضل شركة نقل عفش وأثاث في الكويت