Professional Documents
Culture Documents
2-Add Controls
2-Add Controls
Component , Container, Panel, Window, Frame, Dialog.
JButton Class
اًالكس ٌ JButtonس خخدم لإضافة زر ) (Buttonيف واهجة املس خخدم .حمخوى ُذا اًزر ميىن أن ٍىون :هص ,أًلوهة ,هص و أًلوهة
جباهبَ.
public class JButton extends AbstractButton implements Accessible
CONSTRUCTORS
)(public JButton 1
ًًشئ اكئن من اًالكس JButtonميثي Buttonفارغ.
)public JButton(String text 2
ًًشئ اكئن من اًالكس JButtonميثي Buttonفهيا هص.
ماكن اًبارامِرت textمنرر اًيص اذلي ىرًد وضؼَ بداخي اًػ .Button
)public JButton(Icon image 3
ًًشئ اكئن من اًالكس JButtonميثي Buttonفهيا أًلوهة.
ماكن اًبارامِرت Iconمنرر اكئن من الإهرتفُس Iconميثي الًلوهة اًيت سُمت وضؼِا يف اًػ .Button
)public JButton(String text, Icon image 4
ًًشئ اكئن من اًالكس JButtonميثي Buttonفهيا هص و أًلوهة مؼ ًا .ماكن اًبارامِرت textمنرر اًيص اذلي ىرًد وضؼَ يف
اًػ .Buttonماكن اًبارامِرت Iconمنرر اكئن من الإهرتفُس Iconميثي الًلوهة اًيت سُمت وضؼِا يف اًػ .Button
Methods of Button Class
METHODS
)(public String getText 1
حرحع هص اكئن اًػ JButtonاذلي كام بإس خدػاهئا نػ .String
)public void setText(String text 2
جس خخدم ًخبدًي هص اكئن اًػ JButtonاذلي كام بإس خدػاهئا .ماكن اًبارامِرت textهضع اًيص اجلدًد.
)(public Icon getIcon 3
حرحع أًلوهة اكئن اًػ JButtonاذلي كام بإس خدػاهئا واكئن هوػَ .Iconحرحع nullيف حال اكن ل ميكل أًلوهة.
)public void setIcon(Icon icon 4
جس خخدم ًوضع أًلوهة ًاكئن اًػ JButtonاذلي كام بإس خدػاهئا.
ماكن اًبارامِرت iconهضع اكئن من الإهرتفُس Iconميثي الًلوهة اًيت س خوضع اإىل خاهب هص اكئن اًػ .JButton
)public void setEnabled(boolean status 5
جس خخدم جلؼي اكئن اًػ JButtonاذلي كام بإس خدػاهئا كابي أو غري كابي ٌَيلر.
ماكن اًبارامِرت statusهضع falseاإذا أردان حؼي اكئن اًػ JButtonغري كابي ٌَيلر.
و هضع trueاإذا أردان حؼي اكئن اًػ JButtonكابي ٌَيلر من خدًد.
مالحظة :اإفرتاضَ ًا ,أي Buttonثضَفَ ٍىون كابي ٌَيلر حىت ًو مل ثلم بس خدػاء ُذٍ ادلاةل.
)public void setMnemonic(int mnemonic 6
جس خخدم ًوضع خط حتت حرف مؼني يف اًيص املوضوع يف اكئن اًػ JButtonاذلي كام بإس خدػاهئا.
ماكن اًبارامِرت mnemonicهضع رمق اًػ ٌَ key codeحرف اذلي ىرًد أن ًمت وضع خط حتخَ.
مع اًؼمل أهَ ميىٌم اإس خخدام اًثوابت املوحوة يف اًالكس KeyEventيف حال نيت ل ثؼرف رمق اًػ ٌَ key codeحرف اذلي
حرًد وضع خط حتخَ.
)public void addActionListener(ActionListener al 7
جس خخدم ًخيفِذ أوامر مؼَية غيد اًيلر ػىل اكئن اًػ JButtonاذلي كام بإس خدػاهئا.
ماكن اًبارامِرت alهضع اكئن من اًالكس ActionListenerو هفؼي بداخهل Overrideدلاةل
اإمسِا ).actionPerformed(ActionEvent ae
Text Components
هَفِة اًخؼامي مع مىوانت اًيطوص ىف اجلافا Text Componentsو اًىت جشمي:
JTextField, JTextArea ,JPasswordField, FormattedTextField,
ُذا اًؼيرص اًرسوىم غبارة غن مربع ًؼرض و حترٍر سعر هىص واحد ومن امه اخلطائص اًىت ميمتزي هبا ُذا اًؼيرص اًرسوىم ما
ًىل:
" .و اًىت جتؼي اًؼيرص اًرسوىم ةل اًلدرة ػىل اًخحرٍر ازياء اًدشغَي من ػدمَ. "editable اخلاضَة
" .و اًىت من خالًِا جس خعَع حتدًد اٌَون اخملطص غيد حتدًد اًيص. "selectioncolor اخلاضَة
".واًىت من خالًِا اًضا وضع ًون مؼني ٌَخط غيد حتدًد اًيص. "selectextcolor اخلاضَة
ُذا بلضافة ٌَخطائص اًرئس َة الاخرى اًرسومِة الاخرى .مثي اخلط و جحم اخلط و ًون اخلط وًون اخلَفِة و غريُا.
مثال :مق بإوشاء برانمج ًلوم املس خخدم بىذابة امسَ ىف مربع اًيص و غيد اًضغط ػىل زر (اغرض) ًمت اإظِار رساةل حرحِب
ٌَمس خخدم .
احلي:
س يلوم بوشاء انفذة وهضع ػَهيا ػدد واحد حلي جسمَة JLabelوػدد واحد زر امر jButtonو ػدد واحد حلي هىص من هوع
JTextField
س يلوم بإوشاء احلدث ً ActionPerformedزر الامر نٌل ىف اًشلك اًخاىل:
حتت ُذا احلدث ىىذب اًىود اًخاىل:
)private void jButton1ActionPerformed(ActionEvent evt
{
;)(String name=jTextField1.getText
};) :"+ nameمرحبا" JOptionPane.showMessageDialog(null,
واًيدِجة غيد اًدشغَي ثظِر شاشة و اًىت ثعاًبم بوضع امسم وغيد اًضغط ػىل زر الامر ثظِر رساةل حرحِب بأمسم .و بًخاىل
فاإن ادلاةل getTextىه اًىت من خالًِا احلطول ػىل اًلمية املوحودة ىف مربع اًيصTextField
CONSTUCTORS
)(public JTextField
1
ًًشئ اكئن من اًالكس JTextFieldميثي Text Fieldفارغ.
)public JTextField(String text
ًً 2شئ اكئن من اًالكس JTextFieldميثي Text Fieldفَِ هص.
ماكن اًبارامِرت textمنرر اًيص اذلي ىرًد وضؼَ بداخي اًػ .Text Field
)public JTextField(int columns
ًً 3شئ اكئن من اًالكس JTextFieldميثي Text Fieldفارغ ميىٌَ أن حيخوي ػىل ػدد حمدد من الحرف.
ماكن اًبارامِرت columnsمنرر رمق ميثي ػدد الحرف الكىص اًيت ميىن اإدخاًِا يف اًػ .Text Field
)public JTextField(String text, int columns
ًًشئ اكئن من اًالكس JTextFieldميثي Text Fieldفَِ هص و ميىٌَ أن حيخوي ػىل ػدد حمدد من الحرف.
4
ماكن اًبارامِرت textمنرر اًيص اذلي ىرًد وضؼَ بداخي اًػ .Text Field
ماكن اًبارامِرت columnsمنرر رمق ميثي ػدد الحرف الكىص اًيت ميىن اإدخاًِا يف اًػ .Text Field
METHODS
)(public String getText
1
حرحع هص اكئن اًػ JTextFieldاذلي كام بإس خدػاهئا نػ .String
)public void setText(String text
2
جس خخدم ًخبدًي هص اكئن اًػ JTextFieldاذلي كام بإس خدػاهئا .ماكن اًبارامِرت textهضع اًيص اجلدًد.
)public void addActionListener(ActionListener al
جس خخدم ًخيفِذ أوامر مؼَية غيد اًيلر داخي اكئن اًػ JTextFieldاذلي كام بإس خدػاهئا.
3
ماكن اًبارامِرت alهضع اكئن من اًالكس ActionListenerو هفؼي بداخهل Overrideدلاةل
اإمسِا ).actionPerformed(ActionEvent ae
)public void removeActionListener(ActionListener al
4جس خخدم ًؼدم ثيفِذ أوامر ادلاةل )( addActionListenerمن خدًد غيد اًيلر بداخي اكئن اًػ JTextFieldاذلي كام
بإس خدػاهئا.
ُذا اًؼيرص اًرسوىم غبارة غن مربع اًضا ًؼرض وحترٍر ػدة اسعر و ًُس سعر واحد مثي JTextField.ذلكل اذا اردت ان ًلوم
مس خخدم برانمج بىذابة ػدة اسعر هطَة ذلكل جيب اس خخدام ُذا اًؼيرص اًرسوىم و ٍمتزي ُذا اًؼيرص اًرسوىم باكفة اخلطائص
اًسابلة بلضافة اىل خاضَة رشًط اٍمترٍر الافلى و اًرأىس .
public class JTextArea extends JTextComponent implements SwingConstants
JTextAtrea_CONSTRUCTORS
)(public JTextArea
1
ًًشئ اكئن من اًالكس JTextAreaميثي Text Areaفارغ.
METHODS
العنصر الرسومىJPasswordField
public class JPasswordField extends JTextField
ُذا اًؼيرص اًرسوىم غبارة غن مربع هص ًؼرض وحترٍر املدخالت بشاكل و رموز اخرى غيدما ًلوم املس خخدم بىذابة املدخالت فِة
و اًرمز الافرتاىض ًخكل اًبَاانت ىه ػالمة اًيجمة (*).وٌس خخدم ُذا اًؼيرص اًرسوىم ىف نخابة الاركام اًرسًة ًربانمج مثال .ومن
امه اخلطائص املمزية ًِذا اًؼيرص ىه خاضَة EchoCharو اًىت ميىن من خالًِا ثغري اًرموز و الاشاكل املراد ظِورُا بدل من
اًرمز الافرتاىض اًيجمة.
Constructors
)(public JPasswordField
1
ًًشئ اكئن من اًالكس JPasswordFieldميثي Password Fieldفارغ.
Methods
)(public char[] getPassword
1
حرحع هص اكئن اًػ JPasswordFieldاذلي كام بإس خدػاهئا نػ Stringمكطفوفة أحرف .char
غيد اًيلر ػىل حترٍر اًيص ،سُمت جسََط اًضوء ػىل اًيص الافرتايض نٌل ىف اًشلك اًخاىل:
مقيا بلػالن غن املخغري sفاإذا مت حتدًد خاهة الاخذَار حنطي ػىل هص اًدسمَة اًخوضَحَة من مربع الاخذَار .مث ًمت ختزٍن ُذا
اًيص يف املخغر sحبيب اىل حٌب مع وضع حرف n/و ذكل ًوضع املؤرش ىف سعر خدًد ....مث اس خخدمٌا ادلاةل ٌَ setTextؼيرص
اًرسوىم jTextArea1و ذكل ًوضع كمية املخغري sىف اًؼيرص اًرسوىم.
ُيا وضؼيا nullأي مل وس خخدم أي Layout Managerذلكل س يلوم بخحدًد ماكن اًػ //Text Fieldيف اًيافذة بيفس يا
من خالل املربع احلوارى اػالة ميىٌم حذف اًؼيارص املوحودة بَ Item 1 ,Item 2 ,Item 3و اسدبداًِا بًؼيارص اًىت حرًدُا نٌل
ىف اًشلك اًخاىل:
بؼد الاىهتاء من نخابة مجَع اًؼيارص اًىت حرًد ان حيخوهيا مربع اًخحرٍر و اًرسد مق بًضغط ػىل زر okو بؼدُا شغي برانمج س خجد
غيارصك كد مت احذواهئا نٌل ىف اًشلك اًخاىل:
وًىك ىرًد مؼرفة اًؼيرص اخملخار برجمَا جيب ػََيا اس خخدام ادلاةل " ." getSelectedItemهفرتض مثال اهيا و ضؼيا مربع هص
" "JTextFieldو رز امر " "JButtonنٌل ُو اػالٍ و ىرًد غيد اًضغط ػىل زر الامر ٍىذب ًيا اًربانمج كمية اًؼيرص اخملخار ىف
مربع اًيص .وحلي ذكل ىىذب اًىود اًخاىل:
;) (String itemText = (String)jComboBox1.getSelectedItem
;)jTextField1.setText(itemText
و اًيدِجة
ثانيا :مربع التحرير و السرد ""JList
اًؼيرص اًرسوىم JListو ُو غبارة غن كامئة حتخوى ػىل ٍلوػة من اًؼيارص ًمت غرضِا ىف معود أو أنرث من المعدةً ،الخذَار من
بُهنا .غيد وضؼم ًخكل اًلامئة ػىل اًيافذة س خجد أهنا كد مت اإضافة غيارص اٍهيا اًَ ًا .وميىن ثغري حمخوايت اًلامئة نٌل فؼَيا ىف مربع
اًخحرٍر و اًرسد أػالٍ و ذكل من خالل خاضَة Modelو اًىت غيد اًضغط ػىل زر الاس خؼراض هبا ًظِر املربع احلوارى.
و من خالل املربع هلوم بضافة اًؼيارص اًىت ىرغب هبا .و ًوخد اًضا خاضَة أخرى هممة ًخكل اًلامئة املًسدةل وىه خاضَة
" "layoutOrientationواًىت حتدد شلك اًبَاانت ىف اًلامئة املًسدةل و ثأخذ زالث كمي:
" " VERTICAL_WRAPو ىه اًىت ثلوم بؼرض اًؼيارص داخي اًلامئة املًسدةل ىف ػدة أمعدة راس َة نٌل ىف اًشلك اًخاىل:
" " VERTICALو ىه اًىت ثلوم بؼرض اًؼيارص داخي اًلامئة املًسدةل ىف معود واحد رأىس .نٌل ىف اًشلك اًخاىل:
" " HORIZONTAL_WRAPو ىه اًىت ثلوم بؼرض اًؼيارص داخي اًلامئة املًسدةل ىف ػدة أمعدة بشلك أفلى .نٌل ىف
اًطورة اًخاًَة:
وًوخد ًِذا اًؼيرص اًرسوىم خاضَة أخرى هممة و ىه خاضَة selectionModeو اًىت حتدد ظرًلة الاخذَار ٌَؼيارص اًىت بًلامئة و
ثأذخد اًلمي اًخاًَة:
" " SINGLEواًىت جتؼي املس خخدم كادر ػىل اخذَار غيرص واحد فلط .فؼيدما ًلوم املس خخدم بخحدًد غيرصً ،مت اإًغاء حتدًد
أي اًؼيرص احملدد سابلا الوىل.نٌل ىف اًشلك اًخاىل:
" " SINGLE_INTERVALمتىن املس خخدم من الاخذَار املخؼدد ٌَؼيارص املخجاورة فلط نٌل ىف اًشلك اًخاىل:
"" MULTIPLE_INTERVALومتىن املس خخدم من الاخذَار املخؼدد ٌَؼيارص سواء اكهت مذجاورة او ل نٌل ىف اًشلك اًخاىل:
كػػػػػوامئ الخذَاراتMenuBar
الكالس JMenuBarو الكالسات التي يمكن إستخدامها في شريط القائمة.
اًالكس ٌ JMenuBarس خخدم لإضافة رشًط اًلوامئ ) ( Menu Barيف أػال اًػFrame.
اًالكس ٌ Menuس خخدم لإضافة كامئة ) ( Menuيف رشًط اًلوامئ.
اًالكس ٌ MenuItemس خخدم لإضافة غيرص ) ( Itemيف اًلامئة.
اًالكس ٌ JCheckBoxMenuItemس خخدم لإضافة Check Boxيف اًلامئة و ُو مثي اًالكسJCheckBox.
اًالكس ٌ JRadioButtonMenuItemس خخدم لإضافة Radio Buttonيف اًلامئة و ُو مثي اًالكسJRadioButton.
وغيد اسلاط اًؼيرص اًرسوىم Menu Barػىل انفذة اًربانمج س خجد أن اًؼيرص حيخوى ػىل كامئة مَف و حترٍر.
وًىك حمتىن من ثغري اًيطوص الافرتاضَة ًلوامئ اًؼيرص اًرسوىم Menu Barاىل الاسٌلء اًىت حرًدُا مق بخحدًد
اًلامئة fileمث من انفذة اخلطائص حدد اخلاضَة textو مق بخغري مسمى اًلامئة .
ميىٌم اًضا اإضافة اًلوهة ٌَلامئة مَف .فلط مق بخحدًد اًلامئة ومن انفذة اخلطائص حدد اخلاضَة "" icons
مق بًضغط ػىل اًزر اًطغري اذلى بجلاهب الامين من اخلاضَة ًمت اظِار املربع احلوارى.
ُذا املربع احلوارى ًدِح كل هَفِة ادراج ضورة ٌَؼيرص اما من خالل جمدل ضور مرفق مع اًربانمج او غن ظرًق جمدل اخر
او حىت رابط اهرتهت .ذلكل من الافضي ًيا ُو ادراج جمدل ضور بَ مجَع اًلوانت وضور اًربانمج و ذكل ًَمت ارفاكة مع
املرشوع اًامن ذُب .و ًىِفِة معي ذكل ما ػََم فلط الا ادراج ُذا اجملدل داخي جمدل اًربانمج املسمى " " srcػىل
سبِي املثال مقت بؼمي جمدل ٌسمى iconمث وضؼخَ داخي اجملدل srcاخلاص بربانجمم و بًخاىل غيد اًضغط ػىل زر
اس خؼراض نٌل ىف اًشلك اًسابق سأخد جمدل اًطور اخلاىص ىب و سأخذار مٌَ اًطورة اًىت ارًدُا ٌَلامئة.
اضافة كوامئ أخرىً .ىك حمتىن من اإضافة اى كامئة اخرى ًرشًط Menu Barما ػََم اًال اًرتنزي ػىل كامئة الادوات
paletteمث ثلوم بسحب اًؼيرص اًرسوىم menuووضؼة ػىل رشًط اًلوامئ.
و ميىٌم الان ثغري امسَ ووضع اٍىون هل .
هَفِة اإضافة غيارص ٌَلوامئً .وخد زالث اهواع من اًؼيارص اًىت جس خعَع اإضافهتا لى كامئة وذكل ػىل اًيحو اًخاىل:
-1اًؼيرص ُ Menu Itemو غيرص رسوىم حيخوى ػىل بَاانت غيد اًضغط ػََة اًلامئة اًرئس َة ًمت اظِارٍ.
- 2اًؼيرص ُ CheckBoxMenuItemو هفس اًؼيرص اًسابق وًىٌَ ٌشمي ػالمة (حص) غيد اخذَار املس خخدم هل.
- 3اًؼيرص ُ RadioButtonMenuItemو ٌش بة اًؼيارص اًسابلة وًىٌَ ٌشمي ػالمة ( )1غيد اخذَار املس خخدم هل.
هَفِة اضافة اًؼيارص لى كامئةً .مت ذكل اما من خالل اًيافذة paletteوذكل بسحب ثكل اًؼيارص و اسلاظِا حتت اًلامئة املراد
ان ثظِر هبا .او من خالل حتدًد اًلامئة املؼيَة مث لكَم شٌلل مث خنخار الامر Add From Paletteمث خنخار اًؼيرص املراد
وضؼة ٌَلامئة نٌل ىف اًشلك اًخاىل:
نٌل ُو ظاُر اػالٍ .ميىٌم ثؼَني مفاثَح الاخذطار اذلي حرًد ًؼيرص اًلامئة من ُذا املربع احلوار .مفثال اردان ان ٍىون مفذاح
الاخذطار ًِذا اًؼيرص ُو CTRL + O .فلميا بخًش َط خاهة CTRLمث أخرتان اًلمية vk_oمث "."ok
وميىٌم ثيفِذ اى امر حتت اى غيرص من خاللEvents > Action > Action Performed
JPopupMenu Constructors
)(public JPopupMenu
ًًشئ اكئن من اًالكس JPopupMenuميثي Popup Menuفارغة ,أي ل حتخوي أي غيرص. 1
لإضافة خِارات فهيا وس خخدم ادلاةل )(.add
)public JPopupMenu(String label
ًًشئ اكئن من اًالكس JPopupMenuميثي Popup Menuفارغة ًِا غيوان .لإضافة خِارات فهيا وس خخدم ادلاةل )(.add
2
ماكن اًبارامِرت labelهضع هص ميثي اًؼيوان اذلي س َظِر يف أػال اًػ .Popup Menuمالحظة :يف حال مل ًظِر اًؼيوان
اذلي وضؼخَ ل ثظن أن املشلكة يف اًىود ,املشلكة كد حىون أن اًػ Themeاملس خخدم ل ًدمع اإظِار غيوان ًِا.
JPopupMenu Methods
)public JMenuItem add(String item
جس خخدم لإضافة غيرص خدًد يف أخر اكئن اًػ JPopupMenuاذلي كام بإس خدػاهئا مث حرحع وسخة مٌَ. 1
ماكن اًبارامِرت itemهضع هص اًؼيرص اذلي س َضاف.
)public JMenuItem add(JMenuItem item
جس خخدم لإضافة غيرص خدًد يف أخر اكئن اًػ JPopupMenuاذلي كام بإس خدػاهئا مث حرحع وسخة مٌَ .ماكن اًبارامِرت
itemهضع اكئن من اًالكس JMenuItemأو من اإحدى اًالكسات اًيت حرث مٌَ ,ميثي اًؼيرص اذلي س َضاف .اًالكسات
اًيت حرث من اًالكس JMenuItemيه اًخاًَةٌ :JMenu -- :س خخدم ًوضع كامئة داخََة يف اًػ .Popup Menu 2