تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
التعامل مع واجهات المستخدم الرسومية .. [متجدد]
#1
كاتب الموضوع : Friendassist

هناك مجموعة من الادوات الرئيسية التي لا نكاد نستغني عنها في تصميم اي برنامج .. سأتناول في هذا الموضوع بعض من هذه الادوات .. حيث يمكننا استخدامها من خلال الكود اي برمجيا و ساتناول ايضا بعض من خصائص كل اداة مع امثلة مبسطة ..

مجموعة الادوات الاساسبة في محرر NetBeans :
0_jFrame .
1_ Button .
2_CheckBox .
3_CheckBox Group .
4_Radio .
5_ListBox .
6_TextField .
7_TextArea .
8_Label .


اولا : jFram :
و هي تعتبر الاداة الرئيسية بين جميع الادوات الاخري و هي من ضمن مجموعة الادوات القابلة لاحتواء ..

التعامل مع الاداة بشكل برمجي ...
كود :
[color=#000000][COLOR=#0000bb]package javaapplication20[/color][COLOR=#007700];
[/COLOR][color=#0000bb]import javax[/color][color=#007700].[/color][color=#0000bb]swing[/color][COLOR=#007700].*;
[/COLOR][color=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]awt[/color][COLOR=#007700].*;
[/COLOR][color=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]awt[/color][color=#007700].[/color][color=#0000bb]event[/color][COLOR=#007700].*;

public class [/COLOR][color=#0000bb]Main [/color][COLOR=#007700]{
       public static [/COLOR][color=#0000bb]void main[/color][color=#007700]([/color][color=#0000bb]String[/color][color=#007700][] [/color][color=#0000bb]args[/color][COLOR=#007700]) {
        [/COLOR][color=#0000bb]JFrame f[/color][COLOR=#007700];
        [/COLOR][color=#0000bb]f [/color][color=#007700]= new [/color][color=#0000bb]jFrame1 [/color][COLOR=#007700]();
    }
}

class [/COLOR][color=#0000bb]jFrame1 [/color][color=#007700]extends [/color][color=#0000bb]JFrame [/color][COLOR=#007700]{
    private [/COLOR][color=#0000bb]Closer Handler[/color][COLOR=#007700];
    private [/COLOR][color=#0000bb]JLabel label[/color][COLOR=#007700];

       [/COLOR][color=#0000bb]jFrame1 [/color][COLOR=#007700]() {
        [/COLOR][color=#0000bb]Container Pane[/color][COLOR=#007700];
        [/COLOR][color=#0000bb]Handler [/color][color=#007700]= new [/color][color=#0000bb]Closer [/color][COLOR=#007700]();
        [/COLOR][color=#0000bb]label [/color][color=#007700]= new [/color][color=#0000bb]JLabel [/color][COLOR=#007700]();
        [/COLOR][color=#0000bb]Pane [/color][color=#007700]= [/color][color=#0000bb]getContentPane [/color][COLOR=#007700]();
        [/COLOR][color=#0000bb]setTitle [/color][color=#007700]([/color][color=#dd0000]"JFrame Example"[/color][COLOR=#007700]);
        [/COLOR][color=#0000bb]setSize [/color][color=#007700]([/color][color=#0000bb]300[/color][color=#007700],[/color][color=#0000bb]120[/color][COLOR=#007700]);
        [/COLOR][color=#0000bb]label[/color][color=#007700].[/color][color=#0000bb]setText [/color][color=#007700]([/color][color=#dd0000]"JLabel"[/color][COLOR=#007700]);
        [/COLOR][color=#0000bb]Pane[/color][color=#007700].[/color][color=#0000bb]add [/color][color=#007700]([/color][color=#0000bb]label[/color][COLOR=#007700]);
        [/COLOR][color=#0000bb]addWindowListener [/color][color=#007700]([/color][color=#0000bb]Handler[/color][COLOR=#007700]);
        [/COLOR][color=#0000bb]show [/color][COLOR=#007700]();
    }

class [/COLOR][color=#0000bb]Closer [/color][color=#007700]extends [/color][color=#0000bb]WindowAdapter [/color][COLOR=#007700]{
    public [/COLOR][color=#0000bb]void windowClosing [/color][color=#007700]([/color][color=#0000bb]WindowEvent event[/color][COLOR=#007700]) {
        [/COLOR][color=#0000bb]System[/color][color=#007700].exit ([/color][color=#0000bb]0[/color][COLOR=#007700]);
    }
    }
}  
[/COLOR][color=#0000bb][/color][/COLOR]

شرح الكود ..

كود :
[color=#000000][COLOR=#0000bb]package javaapplication20[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

وهي الحزمة الرئيسية للبرنامج و التي تشتمل علي مجموعة الفئات الفرعية ..كالفئة Main و jFrame1

كود :
[color=#000000][COLOR=#0000bb]import javax[/color][color=#007700].[/color][color=#0000bb]swing[/color][COLOR=#007700].*;  
[/COLOR][color=#0000bb][/color][/COLOR]

المكتبة او الحزمة الرئيسية swing :
هي مكتبة لأدوات الوجهه الرسوميه ( مثل : الأزرار , مربعات النص ..الخ.. )
و هي من المكتبات الاكثر استخداما في لغة الجافا و هي متعددة المنصات ..اي ان اي نظام تشغيل يستطيع التعامل معها علي انها مكتبة رسومية .. و هي صغيرة الحجم لا تشغل حيز كبير من الذاكرة كما انها سريعة في الفتح .. و تحتوي علي العديد من الحزم الفرعية مثل :
  • javax.swing.border
  • javax.swing.colorchooser
  • javax.swing.event
  • javax.swing.filechooser
  • javax.swing.plaf
  • javax.swing.plaf.basic
  • javax.swing.plaf.metal
  • javax.swing.plaf.multi
  • javax.swing.plaf.synth
  • javax.swing.table
  • javax.swing.text
  • javax.swing.text.html
  • javax.swing.text.html.parser
  • javax.swing.text.rtf
  • javax.swing.tree
  • javax.swing.undo
تستخدم ايضا في البرمجيات عالية التباين و الاظلال و البرمجيات ثنائية البعد و ثلاثية البعد ايضا ..

كود :
[color=#000000][COLOR=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]awt[/color][COLOR=#007700].*;  
[/COLOR][color=#0000bb][/color][/COLOR]

المكتبة او الحزمة الرئيسية awt :
تحتوي المكتبة awt على كافة الفئات لإنشاء واجهات المستخدم و لانشاء الرسومات والصور
و هي تعتبر من المكتبات الاكثر استخداما في الجافا .. و تعتبر ايضا المكتبة المكملة لكل من مكتبتي swing و Applet ..
و تستخدم هي الاخري بشكل متقدم في الرسوميات ثنائية و الاظلال و التباين و تدرج الالوان و الاضائه ..الخ ..
NetBeans awt vs swing tools

مجموعة الادوات التابعة للمكتبة الرسومية awt ضمن محرر NetBeans










يتغير شكلها الكلاسيكي مع نظام التشغيل الموجه للعمل عليه
تحتوي علي مكونات و فئات اقل من المكتبة swing

مجموعة الادوات التابعة للمكتبة الرسومية swing ضمن محرر NetBeans










لا يتغير شكلها مع نظام التشغيل الموجه للعمل عليه
تحتوي علي مكونات و فئات اكثر من المكتبة awt
ادواتها ذات طابع ثنائي البعد و جذاب و خاصة في الاصدار الحديث من NetBeans 7












كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]class [/color][color=#0000bb]jFrame1 [/color][color=#007700]extends [/color][COLOR=#0000bb]JFrame  
[/COLOR][/COLOR]

قمنا بتعريف الفئة الخاصة برسم الفورمة الرئيسية للبرنامج ..
كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]private [/color][color=#0000bb]Closer Handler[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

عرفنا متغير handler لاتمام عملية اغلاق الفورم من خلال متحكم الاغلاق للفورم وهو closer ..
كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]private [/color][color=#0000bb]JLabel label[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

قمنا بتعريف كائن من نوع jLabel لاستخدامة في الفورم ..
كود :
[color=#000000][COLOR=#0000bb]Container Pane[/color][COLOR=#007700];  
[/COLOR][color=#0000bb][/color][/COLOR]

قمنا بتهيئة حاوية الفورم و هي pane ..
كود :
[color=#000000][COLOR=#0000bb]Handler [/color][color=#007700]= new [/color][color=#0000bb]Closer [/color][COLOR=#007700]();  
[/COLOR][color=#0000bb][/color][/COLOR]

اي ان المتغير handler سيستخدم في اجراء الاغلاق ..
كود :
[color=#000000][COLOR=#0000bb]label [/color][color=#007700]= new [/color][color=#0000bb]JLabel [/color][COLOR=#007700]();  
[/COLOR][color=#0000bb][/color][/COLOR]

اي ان label عبارة عن كائن jLabel جديد ..
كود :
[color=#000000][COLOR=#0000bb]Pane [/color][color=#007700]= [/color][color=#0000bb]getContentPane [/color][COLOR=#007700]();  
[/COLOR][color=#0000bb][/color][/COLOR]

يتم في هذا الكود استدعاء جسم حاوية الفورم ..وهي ContentPane
كود :
[color=#000000][COLOR=#0000bb]setTitle [/color][color=#007700]([/color][color=#dd0000]"JFrame Example"[/color][COLOR=#007700]);  
[/COLOR][color=#0000bb][/color][/COLOR]

لجعل عنوان الفورم كما بالاقواس ..
كود :
[color=#000000][COLOR=#0000bb]setSize [/color][color=#007700]([/color][color=#0000bb]300[/color][color=#007700],[/color][color=#0000bb]120[/color][COLOR=#007700]);  
[/COLOR][color=#0000bb][/color][/COLOR]

لجعل حجم الفورم كما بالاقواس ..
كود :
[color=#000000][COLOR=#0000bb]label[/color][color=#007700].[/color][color=#0000bb]setText [/color][color=#007700]([/color][color=#dd0000]"Basic GUI Component in java"[/color][COLOR=#007700]);  
[/COLOR][color=#0000bb][/color][/COLOR]

لاعادة تسمية الليبل كما بالاقواس ..
كود :
[color=#000000][COLOR=#0000bb]Pane[/color][color=#007700].[/color][color=#0000bb]add [/color][color=#007700]([/color][color=#0000bb]label[/color][COLOR=#007700]);  
[/COLOR][color=#0000bb][/color][/COLOR]

اي اضف اداة Label الي حاوية الفورم ..
كود :
[color=#000000][COLOR=#0000bb] addWindowListener [/color][color=#007700]([/color][color=#0000bb]Handler[/color][COLOR=#007700]);  
[/COLOR][color=#0000bb][/color][/COLOR]

تم في هذا الكود عمل مراقب للاحداث و هو في هذه الحالة مراقب لعملية اغلاق الفورم .. اي عند الضغط علي اغلاق يتم اغلاق الفورم و الانتهاء من المكتبة معا و بشكل فوري ..
كود :
[color=#000000][COLOR=#0000bb]show [/color][COLOR=#007700]();  
[/COLOR][color=#0000bb][/color][/COLOR]

امر لاظهار اداة الفورم و محتوياتها ..
كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]class [/color][color=#0000bb]Closer [/color][color=#007700]extends [/color][color=#0000bb]WindowAdapter [/color][COLOR=#007700]{
    public [/COLOR][color=#0000bb]void windowClosing [/color][color=#007700]([/color][color=#0000bb]WindowEvent event[/color][COLOR=#007700]) {
        [/COLOR][color=#0000bb]System[/color][color=#007700].exit ([/color][color=#0000bb]0[/color][COLOR=#007700]);
    }
    }  
[/COLOR][color=#0000bb][/color][/COLOR]

دالة مخصصة لاغلاق الفورم و 0 لاننا لا نحتاج الي اعادة تهيئ المكتبة مرة اخري ..من خلال الدالة الرئيسية main

كود :
[color=#000000][COLOR=#0000bb]JFrame f[/color][COLOR=#007700];
        [/COLOR][color=#0000bb]f [/color][color=#007700]= new [/color][color=#0000bb]jFrame1 [/color][COLOR=#007700]();  
[/COLOR][color=#0000bb][/color][/COLOR]

يتم من خلال هذه التعليمات تهيئة الفورم و يجب ان يكون من خلال الدالة الرئيسية main ..

بعض من التحكمات الخاصة باداة jFram :

كود :
[color=#000000][COLOR=#0000bb]void addWindowListener[/color][color=#007700]([/color][color=#0000bb]WindowListener Handler[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

يتم من خلال هذا الكود تعيين معالج الاحداث الخاص باطار الفورم ..
كود :
[color=#000000][COLOR=#0000bb]Container getContentPane[/color][COLOR=#007700]()  
[/COLOR][color=#0000bb][/color][/COLOR]

لارجاع الكائن contentpane لاطار او جسم الفورم ..
كود :
[color=#000000][COLOR=#0000bb]void setBackground [/color][color=#007700]([/color][color=#0000bb]Color BackgroundColor[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

لتحديد لون خلفية الفورم ..
كود :
[color=#000000][COLOR=#0000bb]void setFont [/color][color=#007700]([/color][color=#0000bb]Font TextFont[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

تعين نوع الخط للفورم ..
كود :
[color=#000000][COLOR=#0000bb]void setForeground [/color][color=#007700]([/color][color=#0000bb]Color TextColor[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

لتغير لون الكتابة للفورم ..
كود :
[color=#000000][COLOR=#0000bb]void setSize [/color][color=#007700]([/color][color=#0000bb]int Width[/color][color=#007700], [/color][color=#0000bb]int Height[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

لتحديد حجم الفورم من خلال الاحداثيات الرياضية ..
كود :
[color=#000000][COLOR=#0000bb]void setTitle [/color][color=#007700]([/color][color=#0000bb]String Text[/color][COLOR=#007700])  
[/COLOR][color=#0000bb][/color][/COLOR]

لتحديد نص شريط العنوان للفورم ..
كود :
[color=#000000][COLOR=#0000bb]void show [/color][COLOR=#007700]()  
[/COLOR][color=#0000bb][/color][/COLOR]

لاظهار الفورم ..


ثانيا : jButton :

مثال للاطلاع فقط :


كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]public class [/color][color=#0000bb]Button1 [/color][color=#007700]extends [/color][color=#0000bb]JApplet [/color][color=#007700]implements [/color][color=#0000bb]ActionListener [/color][COLOR=#007700]{
  private [/COLOR][color=#0000bb]Container Panel[/color][COLOR=#007700];
  private [/COLOR][color=#0000bb]LayoutManager Layout[/color][COLOR=#007700];
  private [/COLOR][color=#0000bb]JButton Button1[/color][COLOR=#007700];
  private [/COLOR][color=#0000bb]JButton Button2[/color][COLOR=#007700];
  private [/COLOR][color=#0000bb]JButton Button3[/color][COLOR=#007700];
  private [/COLOR][color=#0000bb]JTextField Command[/color][COLOR=#007700];
  public [/COLOR][color=#0000bb]Button1 [/color][COLOR=#007700]() {
    [/COLOR][color=#0000bb]Layout [/color][color=#007700]= new [/color][color=#0000bb]FlowLayout [/color][COLOR=#007700]();
    [/COLOR][color=#0000bb]Panel [/color][color=#007700]= [/color][color=#0000bb]getContentPane [/color][COLOR=#007700]();
    [/COLOR][color=#0000bb]Button1 [/color][color=#007700]= new [/color][color=#0000bb]JButton [/color][color=#007700]([/color][color=#dd0000]"Red Background"[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button2 [/color][color=#007700]= new [/color][color=#0000bb]JButton [/color][color=#007700]([/color][color=#dd0000]"Yellow Background"[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button3 [/color][color=#007700]= new [/color][color=#0000bb]JButton [/color][COLOR=#007700]();
    [/COLOR][color=#0000bb]Command [/color][color=#007700]= new [/color][color=#0000bb]JTextField [/color][color=#007700]([/color][color=#dd0000]"ActionCommand"[/color][color=#007700], [/color][color=#0000bb]20[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]setLayout [/color][color=#007700]([/color][color=#0000bb]Layout[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]add [/color][color=#007700]([/color][color=#0000bb]Button1[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]add [/color][color=#007700]([/color][color=#0000bb]Button2[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]add [/color][color=#007700]([/color][color=#0000bb]Button3[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]add [/color][color=#007700]([/color][color=#0000bb]Command[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button1[/color][color=#007700].[/color][color=#0000bb]addActionListener [/color][color=#007700]([/color][color=#0000bb]this[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button1[/color][color=#007700].[/color][color=#0000bb]setActionCommand [/color][color=#007700]([/color][color=#dd0000]"red"[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button2[/color][color=#007700].[/color][color=#0000bb]setEnabled [/color][color=#007700]([/color][color=#0000bb]false[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button2[/color][color=#007700].[/color][color=#0000bb]addActionListener [/color][color=#007700]([/color][color=#0000bb]this[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]addActionListener [/color][color=#007700]([/color][color=#0000bb]this[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Command[/color][color=#007700].[/color][color=#0000bb]setEditable [/color][color=#007700]([/color][color=#0000bb]false[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]black[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setForeground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]white[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setText [/color][color=#007700]([/color][color=#dd0000]"White on Black"[/color][COLOR=#007700]);
    [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]yellow[/color][COLOR=#007700]);
  }
  public [/COLOR][color=#0000bb]void actionPerformed[/color][color=#007700]([/color][color=#0000bb]ActionEvent e[/color][COLOR=#007700]) {
    [/COLOR][color=#0000bb]String Action[/color][COLOR=#007700];
    [/COLOR][color=#0000bb]Action [/color][color=#007700]= [/color][color=#0000bb]e[/color][color=#007700].[/color][color=#0000bb]getActionCommand [/color][COLOR=#007700]();
    if ([/COLOR][color=#0000bb]Action[/color][color=#007700].[/color][color=#0000bb]equals [/color][color=#007700]([/color][color=#dd0000]"red"[/color][COLOR=#007700])) {
      [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]red[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button1[/color][color=#007700].[/color][color=#0000bb]setEnabled [/color][color=#007700]([/color][color=#0000bb]false[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button2[/color][color=#007700].[/color][color=#0000bb]setEnabled [/color][color=#007700]([/color][color=#0000bb]true[/color][COLOR=#007700]);
    } else if ([/COLOR][color=#0000bb]Action[/color][color=#007700].[/color][color=#0000bb]equals [/color][color=#007700]([/color][color=#dd0000]"Yellow Background"[/color][COLOR=#007700])) {
      [/COLOR][color=#0000bb]Panel[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]yellow[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button1[/color][color=#007700].[/color][color=#0000bb]setEnabled [/color][color=#007700]([/color][color=#0000bb]true[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button2[/color][color=#007700].[/color][color=#0000bb]setEnabled [/color][color=#007700]([/color][color=#0000bb]false[/color][COLOR=#007700]);
    } else if ([/COLOR][color=#0000bb]Action[/color][color=#007700].[/color][color=#0000bb]equals [/color][color=#007700]([/color][color=#dd0000]"White on Black"[/color][COLOR=#007700])) {
      [/COLOR][color=#0000bb]Command[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]black[/color][COLOR=#007700]);        
      [/COLOR][color=#0000bb]Command[/color][color=#007700].[/color][color=#0000bb]setForeground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]white[/color][COLOR=#007700]);        
      [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]white[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setForeground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]black[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setText [/color][color=#007700]([/color][color=#dd0000]"Black on White"[/color][COLOR=#007700]);
    } else if ([/COLOR][color=#0000bb]Action[/color][color=#007700].[/color][color=#0000bb]equals [/color][color=#007700]([/color][color=#dd0000]"Black on White"[/color][COLOR=#007700])) {
      [/COLOR][color=#0000bb]Command[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]white[/color][COLOR=#007700]);        
      [/COLOR][color=#0000bb]Command[/color][color=#007700].[/color][color=#0000bb]setForeground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]black[/color][COLOR=#007700]);        
      [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setBackground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]black[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setForeground [/color][color=#007700]([/color][color=#0000bb]Color[/color][color=#007700].[/color][color=#0000bb]white[/color][COLOR=#007700]);
      [/COLOR][color=#0000bb]Button3[/color][color=#007700].[/color][color=#0000bb]setText [/color][color=#007700]([/color][color=#dd0000]"White on Black"[/color][COLOR=#007700]);
    }
    [/COLOR][color=#0000bb]Command[/color][color=#007700].[/color][color=#0000bb]setText [/color][color=#007700]([/color][color=#0000bb]Action[/color][COLOR=#007700]);
  }

}  
[/COLOR][color=#0000bb][/color][/COLOR]

ثلاثة خطوات لاظافة اي اداة و منها اداة الذر :
كود :
[color=#000000][COLOR=#0000bb]Button b[/color][COLOR=#007700];
[/COLOR][color=#0000bb]b [/color][color=#007700]= new [/color][color=#0000bb]Button[/color][color=#007700]([/color][color=#dd0000]"My First Button"[/color][COLOR=#007700]);
[/COLOR][color=#0000bb]this[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#0000bb]b[/color][COLOR=#007700]);  
[/COLOR][color=#0000bb][/color][/COLOR]
مثال :
كود :
[color=#000000][COLOR=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]applet[/color][COLOR=#007700].*;
[/COLOR][color=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]awt[/color][COLOR=#007700].*;
public class [/COLOR][color=#0000bb]FirstButton [/color][color=#007700]extends [/color][color=#0000bb]Applet[/color][COLOR=#007700]{
    public [/COLOR][color=#0000bb]void set[/color][COLOR=#007700](){
        [/COLOR][color=#0000bb]this[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700](new [/color][color=#0000bb]Button[/color][color=#007700]([/color][color=#dd0000]"My First Button"[/color][COLOR=#007700]));
    }
}  
[/COLOR][color=#0000bb][/color][/COLOR]

المكتبة Applet :
ماذا تستطيع ان تفعل هذه المكتبة ؟؟
--------------------------------------------
1_تستخدم لرسم الصور في صفحات الويب ..
2_رسم نافذه جديدة و الرسم بداخلها ..
3_تشغيل الاصوات ..
4_استقبال و مراقبة عمليات الادخال من خلال مفاتيح الكيبورد و الماوس ..
5_تستخدم في عمل اتصال من خلال النتورك بين العميل و السيرفر ..
6_تستخدم في عمليات التسجيل و حفظ البيانات و التعامل مع النصوص ..
7_التعامل مع الملفات من نقل و حذف و غيره..
8_تستخدم للتعامل مع الملفات من خلال الانترنت من تحميل و رفع و مشاركة وغيره..
9_التعامل مع دوال api من خلال الجافا ..
و الكثير ..
و هي مكتبة متطورة كثيرا .. تستخدم للتعامل مع عتاد النظام بكافة انواعه ..

مثال آخر :
كود :
[color=#000000][COLOR=#0000bb]import javax[/color][color=#007700].[/color][color=#0000bb]swing[/color][COLOR=#007700].*;
[/COLOR][color=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]awt[/color][COLOR=#007700].*;
[/COLOR][color=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]awt[/color][color=#007700].[/color][color=#0000bb]event[/color][COLOR=#007700].*;
[/COLOR][color=#0000bb]import java[/color][color=#007700].[/color][color=#0000bb]applet[/color][COLOR=#007700].*;
public class [/COLOR][color=#0000bb]BeepApplet [/color][color=#007700]extends [/color][color=#0000bb]Applet [/color][COLOR=#007700]{
    public [/COLOR][color=#0000bb]void init[/color][COLOR=#007700](){
        [/COLOR][COLOR=#ff8000]//بناء كائن الذر
        [/COLOR][color=#0000bb]Button beep [/color][color=#007700]= new [/color][color=#0000bb]Button[/color][color=#007700]([/color][color=#dd0000]"Beep"[/color][COLOR=#007700]);
        [/COLOR][COLOR=#ff8000]//اضافة الذر الي اطار الفورم
        [/COLOR][color=#0000bb]this[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#0000bb]beep[/color][COLOR=#007700]);
        [/COLOR][COLOR=#ff8000]//مراقب الاحداث الخاص بكائن الذر يتم تهيئته للتعامل مع الذر
        [/COLOR][color=#0000bb]beep[/color][color=#007700].[/color][color=#0000bb]addActionListener[/color][color=#007700](new [/color][color=#0000bb]BeepAction[/color][COLOR=#007700]());
    }
    public class [/COLOR][color=#0000bb]BeepAction [/color][color=#007700]implements [/color][color=#0000bb]ActionListener [/color][COLOR=#007700]{
        public [/COLOR][color=#0000bb]void actionPerformed[/color][color=#007700]([/color][color=#0000bb]ActionEvent e[/color][COLOR=#007700]){
            [/COLOR][color=#0000bb]Toolkit[/color][color=#007700].[/color][color=#0000bb]getDefaultToolkit[/color][color=#007700]().[/color][color=#0000bb]beep[/color][COLOR=#007700]();
        }
    }  
[/COLOR][color=#0000bb][/color][/COLOR]

في هذا المثال حققنا عملية التوارث بين الفئات في الجافا

بعض الاحداث الاكثر استخداما مع كائن الذر ..


كود :
[color=#000000][COLOR=#0000bb]void addActionListener [/color][color=#007700]([/color][color=#0000bb]ActionListener Handler[/color][COLOR=#007700])
    [/COLOR][color=#0000bb]تهيئة معالج الاحداث للذر [/color][COLOR=#007700]..  
[/COLOR][color=#0000bb]void setActionCommand [/color][color=#007700]([/color][COLOR=#0000bb]String ActionText
        لتحديد اسم الحدث الذي سيقوم الذر بتأديته [/COLOR][COLOR=#007700]..
[/COLOR][color=#0000bb]void setBackground [/color][color=#007700]([/color][color=#0000bb]Color BackgroundColor[/color][COLOR=#007700])
    [/COLOR][color=#0000bb]لتحديد لون خلفية الذر [/color][COLOR=#007700]..  
[/COLOR][color=#0000bb]void setEnabled [/color][color=#007700]([/color][color=#0000bb]boolean State[/color][COLOR=#007700])
    [/COLOR][color=#0000bb]مفعل ام غير مفعل [/color][COLOR=#007700]..  
[/COLOR][color=#0000bb]void setFont [/color][color=#007700]([/color][color=#0000bb]Font TextFont[/color][COLOR=#007700])
    [/COLOR][color=#0000bb]لتحديد خصائص الخط [/color][COLOR=#007700]..  
[/COLOR][color=#0000bb]void setForeground [/color][color=#007700]([/color][color=#0000bb]Color TextColor[/color][COLOR=#007700])
   [/COLOR][color=#0000bb]لتحديد لون الخط [/color][COLOR=#007700]..  
[/COLOR][color=#0000bb]void setText [/color][color=#007700]([/color][color=#0000bb]String Text[/color][COLOR=#007700])
[/COLOR][color=#0000bb]لتغيير النص المكتوب علي الذر [/color][COLOR=#007700]..  
[/COLOR][color=#0000bb][/color][/COLOR]




ان شاء الله الموضوع متجدد ...

السلام عليكم ورحمة الله ..




}}}}
تم الشكر بواسطة:


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم