J Developer

You might also like

You are on page 1of 13

‫حصًُى انىاجهاث باسخخذاو بزَايج ‪JDeveloper‬‬

‫ىفٌٖ اىجْ‪ٞ‬خ اىخبطخ ثزغ٘‪ٝ‬ش اىزغج‪ٞ‬قبد ث٘اعغخ ‪Jdeveloper‬‬


‫ْٕبك ػبٍالُ‬
‫اىؼبٍو األٗه ٕ٘ اىـ ‪َٝٗ WorkSpace‬نِ رخ‪ٞ‬ئ مَجيذ مج‪ٞ‬ش ‪ٝ‬حز٘‪ ٛ‬اىَشبس‪ٝ‬غ‬
‫اىؼبٍو اىضبّ‪ ٕ٘ ٜ‬اىـ ‪ ٕ٘ٗ Projects‬ػجبسح ػِ حبٗ‪ٝ‬خ ىيزغج‪ٞ‬قبد ٗ‪َٝ‬نِ أُ ‪ٝ‬نُ٘ ْٕبك أمضش ٍِ رغج‪ٞ‬ق ف‪ّ ٜ‬فظ‬
‫اىَششٗع مَب أّ ‪َٝ‬نِ أُ ‪ٝ‬نُ٘ ْٕبك أمضش ٍِ ٍششٗع ف‪ٍ ٜ‬غبحخ اىؼَو اى٘احذح ‪Workspace‬‬

‫إَشاء يساحت ػًم ويشزوع ‪Workspace & Project‬‬


‫قٌ ثبىضغظ ثضس اىفبسح األ‪ َِٝ‬ػي‪ٚ‬‬ ‫ػُذ حشغُم بزَايج ‪ JDeveloper‬سخظهز نك انشاشت انخانُت‬ ‫‪‬‬
‫‪ٗ Applicaions‬اخزش ‪New‬‬
‫عزظٖش ىل ٕزٓ اىشبشخ قٌ ثبالخز‪ٞ‬بس مَب ٕ٘ ٍ٘ضح ثبىشعٌ ‪ ..‬رحذ ‪ General‬اخزش ‪ ٍِٗ Workspaces‬صٌ‬
‫‪Workspace‬‬
‫ٗاضغظ ػي‪OK ٚ‬‬

‫ا‪ ُٟ‬ػي‪ْٞ‬ب إّشبء رغج‪ٞ‬ق جبفب‬


‫اضغظ ثضس اىفأسح األ‪ َِٝ‬ػي‪ ٚ‬ميَخ ‪ٗ tutorials‬اخزش ‪New‬‬
‫صٌ ف‪ ٜ‬قغٌ ‪ Cateogries‬اّزقو إى‪ٗ Client Tier ٚ‬اخزش ‪Swing/AWT‬‬
‫ٍِٗ اىجٖخ اىَقبثيخ ‪ Items‬اخزش ‪Java Application‬‬

‫‪ٝ‬ؼشف ٍجشٍج‪ ٜ‬اىجبفب ٍب اىَقظ٘د ثـ ‪ ٗ AWT ٗ Swing‬عأرحذس ػْٖب ف‪ ٜ‬ح‪ْٖٞ‬ب‬


‫ثؼذ االخز‪ٞ‬بس قٌ ثبىضغظ ػي‪OK ٚ‬‬
‫عزظٖش ىل اىْبفزح اىخبطخ ثـ إّشبء ثشّبٍج جبفب مبىزبى‪ ٜ‬قٌ ثزغَ‪ٞ‬خ اىزغج‪ٞ‬ق ٗى‪ٞ‬نِ ‪ٍ Login‬ضالً ‪ٝ‬جت أُ رنُ٘ اىْبفزح‬
‫مبىزبى‪ٜ‬‬
‫ٗالحظ أّ ‪ٝ‬جت ػي‪ٞ‬ل اخز‪ٞ‬بس اعَب راد ٍؼْ‪ٗ ٚ‬ف‪ّ ٜ‬فظ اى٘قذ رخضغ ىششٗط اىزغَ‪ٞ‬خ ف‪ Java ٜ‬فٖ‪ ٜ‬ف‪ ٜ‬األخ‪ٞ‬ش‬
‫أعَبء ٍيفبد ٗ ‪ Classes‬فال رجذأ ثشقٌ أٗ ثحشٗف غش‪ٝ‬جخ ٍضو اىؼشث‪ٞ‬خ ٗمزىل ال رغزخذً اىَغبفبد ‪.‬‬
‫ثؼذ رىل اضغظ ‪OK‬‬
‫ع‪ٞ‬أر‪ ٜ‬ثؼذٕب رجبػبً شبشخ إّشبء ‪ ( Frame‬إعبس ) ٕٗ٘ ‪ٝ‬ؼْ‪ ٜ‬شبشخ أٗ ّبفزح فبىزغج‪ٞ‬ق ‪ٝ‬حز٘‪ّ ٛ‬بفزح أٗ امضش‬
‫قٌ ثزغَ‪ٞ‬خ اىْبفزح ‪ٗ Login Window.‬قٌ ثؼَو ػْ٘اُ ىٖزٓ اىْبفزح ٗى٘ ثبىؼشث‪ٞ‬خ مبىَضبه اىزبى‪: ٜ‬‬

‫ٗاضغظ ثؼذٕب ‪OK‬‬

‫عزالحظ ف‪ّ ٜ‬بفزح ‪ٗ Application Navigator‬ج٘د ٍيف‪ ِٞ‬راد اٍزذاد جبفب‬

‫احذٌٕ ىيزغج‪ٞ‬ق ٕٗ٘ ‪ٗ Login.java‬األخش ‪ LoginWindow.java‬اىخبص ثبىـ‪Frame‬‬


‫ف‪ ٜ‬األخ‪ٞ‬ش عزظٖش ىل شبشخ ٍشبثٖٔ ىٖزٓ‬
‫رأمذ اّل ضغغذ ػي‪ LoingWindow.java ٚ‬ف‪ ٜ‬األػي‪ٗ ٚ‬ػي‪ UI ٚ‬ف‪ ٜ‬األعفو ‪.‬‬
‫اختر ٌذا انمهف َانخاص‬
‫بـىافذة انذخُل‬
‫‪Frame‬‬

‫يعرض نك بىيت‬ ‫ٌذي انىافذة تعرض خصائض انكائه‬


‫مشرَعك َانمهفاث‬ ‫مثم اسمً َمكاوً َنُوً َابعادي‬
‫انتي استخذمتٍا‬

‫ٌَذا يعرض انـ ‪Classes‬‬


‫َانـ‪ ( Methods‬مبرمجي‬
‫انجافا يعرفُن انمعىى )‬

‫شاشت انكائىاث‬
‫‪Components‬‬

‫اضغط ٌىا نرؤيت‬


‫َضع انتصميم‬

‫أّذ ا‪ ُٟ‬ف‪ٗ ٜ‬ضغ اىزظَ‪ٌٞ‬‬


‫ف‪ ٜ‬حبىخ ػذً ظٖ٘س أ‪ٝ‬بً ٍِ اىْ٘افز ٗثبىخظ٘ص ‪ Property Inspector‬أٗ ‪Component Palette‬‬
‫ارٕت إى‪ ٚ‬قبئَخ ‪ View‬ف‪ ٜ‬األػي‪ٗ ٚ‬اخزش اعٌ اىقبئَخ فغزظٖش ىل ح‪ْٖٞ‬ب ‪.‬‬
‫اػشف أّبعب مض‪ٞ‬ش‪ٝ ِٝ‬قٍُ٘٘ ثَزبثؼخ دسط ٍؼ‪ٝٗ ِٞ‬حبٗىُ٘ رغج‪ٞ‬قٔ ٗػْذٍب ‪٘ٝ‬اجٌٖٖ اخزالف ٗى٘ ثغ‪ٞ‬ظ ث‪ ِٞ‬اىنزبة ٗ‬
‫ث‪ٞ‬ئخ اىؼَو ‪ٝ‬ز٘قفُ٘‬
‫ػِ ٍزبثؼخ اىذسط ىزا ّْجٔ أّ ٍِ اىَغزح‪ٞ‬و أُ رزغبثق إػذاداد األجٖضح ٗخظ٘طبً أُ اىخجشاء ف‪ٍ ٜ‬جبه ٍؼ‪ِٞ‬‬
‫رنُ٘ ىٌٖ احز‪ٞ‬بجبد‬
‫ٗ إػذاداد خبطخ ٌٕٗ ‪ٝ‬فزشضّٖ٘ب ف‪ ٜ‬امضش األح‪ٞ‬بُ ىنِ ٍِ األجذس ثل مَزؼيٌ أُ رجحش ػِ م‪ٞ‬ف‪ٞ‬خ إظٖبس ريل‬
‫األداح أٗ ٕزٓ اىْبفزح ‪.‬‬
‫عْقً٘ ا‪ ُٟ‬ثإضبفخ ‪ Buttons ٗ Text Fields ٗ Lable‬ىٖزا اىـ ‪ Frame‬اىز‪ ٛ‬أّشأّبٓ ‪.‬‬
‫ارٕت إى‪ Component Palette ٚ‬اىَ٘ج٘دح ف‪ ٜ‬اعفو ‪ٝ‬غبس اىظفحخ ٗرأمذ أُ ‪ ٕ٘ Swing‬اىَخزبس حبى‪ٞ‬بً ‪.‬‬

‫ٍِ ريل اىقبئَخ اثحش ػِ ‪ٗ Jlable‬قٌ ثبىضغظ ػي‪ ٔٞ‬مَب ف‪ ٜ‬اىشبشخ اىزبى‪ٞ‬خ ٗثؼذٕب اضغظ ػي‪ ٚ‬اىـ ‪Frame‬‬
‫اىخبص ثبىزظَ‪ٌٞ‬‬
‫عزنُ٘ اىشبشخ ىذ‪ٝ‬ل مبألر‪ٜ‬‬

‫ع‪ٞ‬نُ٘ ٕزا اىـ ‪ Lable‬مؼْ٘اُ رشح‪ٞ‬ج‪ ٜ‬ىٖزا اىـ ‪ Frame‬فؼي‪ ٚ‬عج‪ٞ‬و اىَضبه قذ ‪ٝ‬حز٘‪ ٛ‬جَيخ إٔال ٗعٖالً أٗ اعٌ‬
‫اىجشّبٍج ٍضالً‬
‫‪َٝ‬نْل رغ‪ٞٞ‬ش اىْض اىَ٘ج٘د حبى‪ٞ‬بً ٗاىز‪ jLable ٕ٘ ٛ‬ػِ عش‪ٝ‬ق ّبفزح ‪ Property Inspector‬اثحش ػِ‬
‫اىخبط‪ٞ‬خ ‪ٗ Text‬امزت اىْض اىز‪ ٛ‬رش‪ٝ‬ذٓ أُ ‪ٝ‬ظٖش مبىزبى‪ٗ ٜ‬ال رْغ‪ ٚ‬أُ رؼ‪ٞ‬ذ رغَ‪ٞ‬خ ٍِ خاله اىخبط‪ٞ‬خ ‪name‬‬

‫‪Ashraf‬‬
‫ثؼذٕب اضغظ ػي‪ ٚ‬اىـ ‪ Frame‬ف‪ ٜ‬اى٘عظ ‪ ،‬عزش‪ ٙ‬أُ اىْض رغ‪ٞ‬ش ٗىنِ قذ ال ‪ٝ‬ظٖش ثشنو مبٍو‬
‫اضغظ ػي‪ ٚ‬اىـ ‪ Lable‬اىز‪ٗ ٛ‬ضؼْبٓ ٗقٌ ثَحبٗىخ رنج‪ٞ‬ش حذٗدٓ ػِ عش‪ٝ‬ق أسمبّٔ ث٘اعغخ اىفأسح ‪.‬‬
‫‪َٝ‬نْل رنج‪ٞ‬ش حجٌ اىخظ ثؼذٕب ػِ عش‪ٝ‬ق اىخبط‪ٞ‬خ ‪ font‬ف‪ّ ٜ‬بفزح ‪ ، Property Inspector‬قٌ ثبخز‪ٞ‬بس خغ٘ط‬
‫ٍؼشٗفخ ٗافزشاض‪ٞ‬خ اى٘ج٘د ف‪ ٜ‬األجٖضح ٍضو خظ ‪ٗ Tahoma ٗ Arial‬غ‪ٞ‬شٕب إال إرا مْذ عزظذس ريل اىخغ٘ط‬
‫ٍغ ثشّبٍجل ‪.‬‬
‫‪ horizontalAlignment‬قٌ ثبمزشبف ثق‪ٞ‬خ‬ ‫مزىل حبٗه ػَو ٍحبراح إى‪ ٚ‬اى‪ٗ َِٞٞ‬رىل ػِ عش‪ٝ‬ق اىخبطخ‬
‫اىخظبئض ثْفغل ‪.‬‬
‫ثؼذ رىل قٌ ثإضبفخ ‪ Jlable‬خبص ثبعٌ اىَغزخذً ٗأخش خبص ثنيَخ اىَشٗس ثْفظ اىغش‪ٝ‬قخ‬
‫‪ TextBox‬إلدخبه اعٌ اىَغزخذً ف‪ ٔٞ‬ثْفظ اىغش‪ٝ‬ق اىغبثقخ ا‪ ُٟ‬اضغظ ػي‪ٚ‬‬ ‫ٗأالُ ػي‪ْٞ‬ب إضبفخ ٍشثغ ّض‬
‫‪ٗ JtextField‬قٌ سعَٔ ػي‪ ٚ‬اىـ ‪ ٍِ Frame‬اىْقغخ اى‪ٞ‬غش‪ ٙ‬اىؼي٘‪ٝ‬خ إى‪ ٚ‬اىْقغخ اى‪ َْٜٞ‬اىغفي‪ٞ‬خ ىن‪ٝ ٜ‬زحذد ىل‬
‫حجَٔ ٗضؼٔ رحذ اىـ ‪ Jlable‬اىخبص ثبعٌ اىَغزخذً ‪.‬‬

‫ٗأٍب ٍشثغ اىْض اىخبص ثنيَخ اىَشٗس ٗاىز‪ٝ ٛ‬خزيف ػِ عبثقٔ ثأّٔ ال ‪ٝ‬ظٖش ميَخ اىَشٗس ٗإَّب ثذال ٍْٖب ػالٍخ *‬
‫‪.‬‬
‫قٌ ثحزف اىق‪ ٌٞ‬اىَ٘ج٘دح ف‪ ٜ‬خبط‪ٞ‬خ ‪ text‬إلصاىخ ٍبٕ٘ ٍ٘ج٘د داخو ٍشثغ اىْض ‪.‬‬
‫ٗقٌ ثزغ‪ٞٞ‬ش اعٌ ٍشثغ اىْض ٕٗ٘ ْٕب ػجبسح ػِ ‪ٗ Object‬رىل ثزغ‪ٞٞ‬ش ق‪َٞ‬خ خبط‪ٞ‬خ ‪ name‬إى‪ٚ‬‬
‫‪userNameTextField‬‬
‫ٗمزىل ثبىْغجخ ىَشثغ اىْض اىخبص ثنيَخ اىَشٗس قٌ ثزغ‪ٞٞ‬ش ق‪َٞ‬خ خبط‪ٞ‬خ ‪Name‬‬
‫إى‪passwordField ٚ‬‬
‫ثق‪ ٜ‬ف‪ ٜ‬األخ‪ٞ‬ش إضبفخ صس ‪ Jbutton‬ىؼَي‪ٞ‬خ اىذخ٘ه ٗ ‪ٝ‬زٌ اخز‪ٞ‬بسٓ ٍِ ّفظ اىَنبُ اىز‪ ٛ‬عجق أُ أخزّب ٍْٔ ٍشثغ‬
‫اىْض اىخبص ثبعٌ اىَغزخذً ٗميَخ اىَشٗس قٌ ثزغ‪ٞٞ‬ش خبط‪ٞ‬خ ‪ text‬ىيـ ‪ Jbutton‬إى‪ ٚ‬ميَخ "دخ٘ه" ٗمزىل قٌ‬
‫ثزغ‪ٞٞ‬ش ق‪َٞ‬خ خبط‪ٞ‬خ ‪ name‬إى‪LoginButton ٚ‬‬

‫ٍِ اىَفزشع أُ ‪ٝ‬نُ٘ ىذ‪ٝ‬ل ا‪ ُٟ‬شبشخ رشجٔ اىشبشخ اىزبى‪ٞ‬خ ‪:‬‬

‫كًا رأَج نى َضف حخً اٌِ أٌ كىد جافا ونكُك فٍ انحقُقت أضفج ‪ ..‬اضغط ػهً ‪ Code‬فٍ اسفم انـ ‪frame‬‬
‫انذٌ صًًخه‬
. ‫ فٍ األسفم‬UI ‫ بكخابخه َُابت ػُك ػذ إنً وضغ انخصًُى ػٍ طزَق ضغط‬Jdeveloper ‫وسخزي يا قاو‬

‫ قى بإضافخه بُفسك‬، ‫ إلظهار َخُجت انذخىل‬frame ‫انـ‬ ‫ أخز فٍ اسفم‬Jlable ‫بقٍ شٍء صغُز وهى إضافت‬
text ‫خ‬ٞ‫ خبط‬ٜ‫َخ ٍ٘ج٘د ف‬ٞ‫ ق‬ٛ‫ ثَغح أ‬ٚ‫ ٗال رْغ‬infoLabel ‫وقى بخسًُخه بـ‬

. ً‫حأكذ يٍ أسًاء انكائُاث وَجب يزاػاة حانت األحزف يٍ حُذ كىَها كبُزة أو صغُزة فجافا حساست نها جذا‬
. ‫حاٌ اٌِ بأٌ َقىو ببؼض انخطىَز بذال يٍ انزسى‬

‫ ) ػُذ انضغط ػهً انشر انخاص بانذخىل‬Evnet ( ‫سُقىو اٌِ بإضافت حذد‬
‫ قاو بإضافت هذا انكىد‬Jdeveloper ٌ‫قى بانُقز ػهً سر دخىل يزحٍُ يخخانٍُ سخجذ أ‬

private void LoginButton_actionPerformed(ActionEvent e)


{
}

ٜ‫ش مبىزبى‬ٞ‫ األخ‬ٜ‫ظجح ف‬ٞ‫ِ ى‬ٞ‫ِ اىق٘ع‬ٞ‫قٌ ثإضبفخ ٕزا اىن٘د ث‬


private void LoginButton_actionPerformed (Action Evente)
{
String username = userNameTextField.getText();
char[] password = passwordField.getPassword();
String pw = new String(password);

if(username.trim().length() == 0 || pw.trim().length() == 0)
{
infoLabel.setText("Login Message: username and password should not be
empty");

}
else
{
infoLabel.setText("Login Message: customer is logging in ...");
if (username.equals("a") && pw.equals("b"))
{
infoLabel.setText("Login Message: customer has logged in");
}
else
infoLabel.setText("Login Message: invalid username or password, login
failed");
}
}

‫و اىجشّبٍج‬ٞ‫ُ قٌ ثزشغ‬ٟ‫ا‬
F11 ٚ‫ق اىضغظ ػي‬ٝ‫ٗرىل ػِ عش‬

OK ٌ‫ ص‬Login.java ‫قل اخزش‬ٞ‫ ىزغج‬ٜ‫غ‬ٞ‫قذ رظٖش ىل سعبىخ رغأىل ػِ اىَيف اىشئ‬

LoginWindow.java ‫ُ ٕزا ٕ٘ اىن٘د اىنبٍو ىيَيف‬ٟ‫ٗا‬

package mypackage1;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JLabel;
import java.awt.Rectangle;
import java.awt.Font;
import javax.swing.SwingConstants;
import javax.swing.JTextField;
import javax.swing.JPasswordField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class LoginWindow extends JFrame


{
private JLabel jLabel1 = new JLabel();
private JLabel jLabel2 = new JLabel();
private JLabel jLabel3 = new JLabel();
private JTextField userNameTextField = new JTextField();
private JPasswordField passwordField = new JPasswordField();
private JButton LoginButton = new JButton();
private JLabel infoLabel = new JLabel();

public LoginWindow()
{
try
{
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}

private void jbInit() throws Exception


{
this.getContentPane().setLayout(null);
this.setSize(new Dimension(400, 307));
this.setTitle("‫;)"شبشخ اىذخ٘ه‬
jLabel1.setText(" ‫خ‬ٞ‫;)"جبٍؼخ اهصسقبء األٕي‬
jLabel1.setBounds(new Rectangle(15, 5, 370, 55));
jLabel1.setFont(new Font("alkesaa - nawal", 0, 30));
jLabel1.setHorizontalAlignment(SwingConstants.RIGHT);
jLabel2.setText("ً‫;)"اعٌ اىَغزخذ‬
jLabel2.setBounds(new Rectangle(155, 60, 220, 25));
jLabel2.setHorizontalAlignment(SwingConstants.RIGHT);
jLabel3.setText("‫;)"ميَخ اىَشٗس‬
jLabel3.setBounds(new Rectangle(155, 115, 225, 30));
jLabel3.setHorizontalAlignment(SwingConstants.RIGHT);
userNameTextField.setBounds(new Rectangle(240, 85, 145, 25));
passwordField.setBounds(new Rectangle(240, 145, 145, 25));
LoginButton.setText("‫;)"دخ٘ه‬
LoginButton.setBounds(new Rectangle(295, 190, 85, 30));
LoginButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
LoginButton_actionPerformed(e);
}
});
infoLabel.setText("jLabel4");
infoLabel.setBounds(new Rectangle(10, 235, 380, 25));
this.getContentPane().add(infoLabel, null);
this.getContentPane().add(LoginButton, null);
this.getContentPane().add(passwordField, null);
this.getContentPane().add(userNameTextField, null);
this.getContentPane().add(jLabel3, null);
this.getContentPane().add(jLabel2, null);
this.getContentPane().add(jLabel1, null);
}

private void LoginButton_actionPerformed(ActionEvent e)


{
String username = userNameTextField.getText();
char[] password = passwordField.getPassword();
String pw = new String(password);

if(username.trim().length() == 0 || pw.trim().length() == 0)
{
infoLabel.setText("Login Message: username and password should not be
empty");

}
else
{
infoLabel.setText("Login Message: customer is logging in ...");
if (username.equals("a") && pw.equals("b"))
{
infoLabel.setText("Login Message: customer has logged in");
}
else
infoLabel.setText("Login Message: invalid username or password, login
failed");
}

‫وحًُُاحٍ نهجًُغ بانخىفُق‬


‫ أشزف األشقز‬/ ‫أخىكى‬

You might also like