كيفية إنشاء وعرض رسائل التنبية مثل رسائل ويندوز 10 فى تطبيقات جافا
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
كيفية إنشاء وعرض رسائل التنبية مثل رسائل ويندوز 10 فى تطبيقات جافا
في Java يفضل بعض المطورين استخدام JOptionPane لانشاء رسائل التنبية للمستخدمين، ولكن عندما تعمل في بيئة ثابتة ، على سبيل المثال في نظام التشغيل Windows 10 ، من الجيد استخدام أنماط الإشعارات الافتراضية لنظام التشغيل Windows ، ولهذا السبب سوف نناقش كيفية استخدام اشعارات Windows 10 بسهولة لانشاء رسائل التنبية و ذلك باستخدام Java AWT.
تنشئ التعليمة البرمجية التالية الإشعار المطلوب في علبة النظام system tray ، بحيث يمكنك ببساطة إنشاء طريقة له لتغير نص التنبيهات وهذا كل شيء:
الاخراج :

لاحظ أن تنفيذ التعليمات البرمجية يجب أن يتم من خلال عبارة Try-Catch التي تستحوذ على الاستثناءين اللذين تم طرحهما بواسطة الكود (AWTException أو MalformedURLException) أو استثناء عام (كما هو موضح أعلاه).
مثال أخر :
يوضح المثال التالي فئة تطبيق بسيطة جدًا ترسم زرًا بسيطًا في إطار. عند النقر فوق الزر ، سيظهر إشعار ببصنية النظام SystemTray :

تنشئ التعليمة البرمجية التالية الإشعار المطلوب في علبة النظام system tray ، بحيث يمكنك ببساطة إنشاء طريقة له لتغير نص التنبيهات وهذا كل شيء:
- الكود:
import java.awt.*;
import java.awt.event.*;
import java.awt.TrayIcon.MessageType;
import java.net.MalformedURLException;
try{
// الحصول على مثيل واحد فقط للكائن SystemTray
SystemTray tray = SystemTray.getSystemTray();
// إذا كنت تريد إنشاء ايقون في علبة النظام للمعاينة
Image image = Toolkit.getDefaultToolkit().createImage("some-icon.png");
//Alternative (
if the icon is on the classpath):
//Image image = Toolkit.getDefaultToolkit().createImage(getClass().getResource("icon.png"));
TrayIcon trayIcon = new TrayIcon(image, "Java AWT Tray Demo");
// دع النظام يغير حجم الصورة إذا لزم الأمر
trayIcon.setImageAutoSize(true);
// تعيين نص تلميح
trayIcon.setToolTip("System tray icon demo");
tray.add(trayIcon);
//عرض معلومات الإخطار:
trayIcon.displayMessage("Hello, World", "Java Notification Demo", MessageType.INFO);
// Error:
// trayIcon.displayMessage("Hello, World", "Java Notification Demo", MessageType.ERROR);
// Warning:
// trayIcon.displayMessage("Hello, World", "Java Notification Demo", MessageType.WARNING);
}catch(Exception ex){
System.err.print(ex);
}
الاخراج :

لاحظ أن تنفيذ التعليمات البرمجية يجب أن يتم من خلال عبارة Try-Catch التي تستحوذ على الاستثناءين اللذين تم طرحهما بواسطة الكود (AWTException أو MalformedURLException) أو استثناء عام (كما هو موضح أعلاه).
مثال أخر :
يوضح المثال التالي فئة تطبيق بسيطة جدًا ترسم زرًا بسيطًا في إطار. عند النقر فوق الزر ، سيظهر إشعار ببصنية النظام SystemTray :
- الكود:
package sandbox;
import java.awt.*;
import java.awt.event.*;
import java.awt.TrayIcon.MessageType;
import java.net.MalformedURLException;
public class Sandbox {
/**
* Parsing a JSONObject string
*
* @param args
*/
public static void main(String[] args) {
Sandbox app = new Sandbox();
}
public Sandbox(){
Frame f = new Frame("Button Example");
Button btn = new Button("Click Here");
btn.setBounds(50,100,80,30);
f.add(btn);
f.setSize(400,400);
f.setLayout(null);
f.setVisible(true);
Sandbox _this = this;
btn.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
if (SystemTray.isSupported()) {
try{
_this.displayTray();
}catch(AWTException ex){
}catch(MalformedURLException ex){
}
} else {
System.err.println("System tray not supported!");
}
}
});
}
public void displayTray() throws AWTException, MalformedURLException {
//انشاء مثيل للكائن SystemTray
SystemTray tray = SystemTray.getSystemTray();
//وضع ايقون من ملف
Image image = Toolkit.getDefaultToolkit().createImage("icon.png");
//اذا كانت الايقون فوجودة فى مجلد المصادر
//Image image = Toolkit.getDefaultToolkit().createImage(getClass().getResource("icon.png"));
TrayIcon trayIcon = new TrayIcon(image, "Java AWT Tray Demo");
//دع النظام يغير حجم الصورة إذا لزم الأمر
trayIcon.setImageAutoSize(true);
//وضح نص تلميح عند مرور الماوس على ايقونة
trayIcon.setToolTip("System tray icon demo");
tray.add(trayIcon);
trayIcon.displayMessage("Hello, World", "Java Notification Demo", MessageType.INFO);
}
}

1zaza- ...
- تاريخ التسجيل : 18/11/2018
المساهمات : 39
النقاط : 66
التقيم : 3
الدولة :
الجنس :
vbcoder- ....
- تاريخ التسجيل : 18/11/2018
المساهمات : 51
النقاط : 81
التقيم : 4
الدولة :
الجنس :
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» شركة تنظيف مسابح بالرياض
» "بروتين بعد التكميم فوائد البروتين بعد التكميم بروتين بودر بعد التكميم"
» اشهر نسخ واتساب بلس 2023 whatsapp plus
» متجر مجوهرات دير: إشراقة الذهب الخالص
» صراف صينى مقاس57*40
» فلاي تورز: اكتشف عالمًا من السفر والسياحة المثيرة
» متجر yallaa kids : مصدر الإبداع والتعلم للأطفال
» افضل تمويل
» "اقوي عروض المساج "