منتدى مصر التقني
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

[Java] كيفية إنشاء ارتباط تشعبي باستخدام JLabel

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

[Java] كيفية إنشاء ارتباط تشعبي باستخدام JLabel Empty [Java] كيفية إنشاء ارتباط تشعبي باستخدام JLabel

مُساهمة من طرف المبرمج الطموح الخميس مارس 03, 2022 8:24 pm

ستتعلم كيفية إنشاء ارتباط تشعبي من خلال المكون JLabel ، حيث لاتحتوي الحزمة Swing على أي مكونات مضمنة يمكنها عرض الارتباطات التشعبية.

أولاً ، قم بإنشاء JLabel كالمعتاد مثل هذا:
الكود:
JLabel hyperlink = new JLabel("منتدى مصر التقني");

قم بتعيين لون النص الخاص به على شكل ارتباط تشعبي (أزرق):
الكود:
hyperlink.setForeground(Color.BLUE.darker());

لجعل مؤشر الماوس يتغير إلى رمز يد عندما يحرك المستخدم الماوس فوق التسمية ، اضبط المؤشر على النحو التالي:
الكود:
hyperlink.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));

ولجعل التسمية قابلة للنقر عليها ، أضف فئة مستمع الماوس إلى JLabel:
الكود:
hyperlink.addMouseListener(new MouseAdapter() {
 
    @Override
    public void mouseClicked(MouseEvent e) {
        // the user clicks on the label
    }
 
    @Override
    public void mouseEntered(MouseEvent e) {
        // the mouse has entered the label
    }
 
    @Override
    public void mouseExited(MouseEvent e) {
        // the mouse has exited the label
    }
});

نتجاوز طريقة mouseClicked () للتعامل مع الحدث الذي ينقر فيه المستخدم على الارتباط التشعبي. وفي هذه الطريقة ، يمكننا استخدام فئة Desktop لفتح الارتباط التشعبي المرتبط ، على النحو التالى:
الكود:
@Override
public void mouseClicked(MouseEvent e) {
    try {
       
        Desktop.getDesktop().browse(new URI("https://egy-tech.forumegypt.net/"));
       
    } catch (IOException | URISyntaxException e1) {
        e1.printStackTrace();
    }
}

سيفتح نظام التشغيل متصفح الويب بعنوان URL إذا كان الرابط هو عنوان URL لموقع الويب أو برنامج بريد إلكتروني إذا كان الرابط عبارة عن عنوان بريد إلكتروني.

لجعل النص مسطرًا عند تحريك المستخدم للماوس فوق الارتباط التشعبي ، يمكننا تعيين كود HTML للنص مع الوسم <a>. لذلك يمكنك تجاوز طريقة mouseEntered على النحو التالى :
الكود:
hyperlink.setText("<html><a href=''>منتدى مصر التقني</a></html>");
المبرمج الطموح
المبرمج الطموح
الاشراف
الاشراف

تاريخ التسجيل : 18/02/2011
المساهمات : 207
النقاط : 368
التقيم : 17
الدولة : مصر
الجنس : ذكر

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

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

ََ

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


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