Ahmed Sawy نشر 26 ديسمبر 2018 أرسل تقرير نشر 26 ديسمبر 2018 السلام عليكم , انا انشأت 2 jframe , واحدة لتسجيل الدخول , والثانية لتسجيل حساب جديد , والان انا اريد الكود الذى يمكن المستخدم من الضغط على "تسجيل حساب جديد" ينتقل الى jframe الخاصة ب التسجيل انا مبتدئ واستخدم جافا نت بينز الرجاء الافادة اقتباس
1 Entesar Khaled نشر 26 ديسمبر 2018 أرسل تقرير نشر 26 ديسمبر 2018 (معدل) وعليكم السلام، يمكن أن تجعل لكل frame كلاس منفصلة وعند الضغط على زر Signup من خلال كلاس SignupFrame يتم إنشاء new object من كلاس LoginFrame. العملية ستتم من خلال إضافة ActionListener وبالعربية "مستمع الحدث" للزر المراد إجراء أحداث من خلالة كإظهار صفحة أخرى أو تنفيذ عملية حسابية أو استدعاء دالة أو حفظ معلومات بقاعدة البيانات أو أي شيئ تريد القيام به عند الضغط على هذا الزر. إذا أردت شرح ActionListener وطريقة إضافته للزر في Java GUI فستجده في هذا الفيديو بالعربية هنا المثال الذي طلبته مطبقاً باللطريقة السابقة import javax.swing.*; import javax.swing.table.DefaultTableModel; import java.awt.*; import java.awt.event.*; import java.util.*; class LoginFrame extends JFrame { private JTextField user,pass; private JLabel userL,passL; private JButton ok,cancel; public LoginFrame(){ super("Login"); setBounds(515,210,280,175); setLayout(null); user = new JTextField(); pass = new JTextField(); userL = new JLabel("User Name"); passL = new JLabel("Password"); ok = new JButton("Login"); cancel = new JButton("Cancel"); ok.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.exit(0); } }); cancel.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { System.exit(0); } }); add(user); add(pass); add(userL); add(passL); add(ok); add(cancel); userL.setBounds(20, 10, 120,30); user.setBounds(140, 10, 120,30); passL.setBounds(20, 60, 120,30); pass.setBounds(140, 60, 120,30); ok.setBounds(30, 110, 100,30); cancel.setBounds(150, 110, 100,30); setVisible(true); } public static void main (String[] args) { new SignUpFrame(); } } class SignUpFrame extends JFrame implements ActionListener{ JLabel title, idLabel, nameLabel, genderLabel, addressLabel, contactLabel; JTextField idField, nameField, genderField, addressField, contactField; JButton registerButton, exitButton; JRadioButton male, female; ButtonGroup bg; JPanel panel; String gender = ""; DefaultTableModel model; SignUpFrame() { setSize(300, 360); setLayout(null); title = new JLabel("Registration Form"); title.setBounds(60, 7, 200, 30); idLabel = new JLabel("ID"); idLabel.setBounds(30, 50, 60, 30); nameLabel = new JLabel("Name"); nameLabel.setBounds(30, 85, 60, 30); genderLabel =new JLabel("Gender"); genderLabel.setBounds(30, 120, 60, 30); addressLabel = new JLabel("Address"); addressLabel.setBounds(30, 155, 60, 30); contactLabel = new JLabel("Contact"); contactLabel.setBounds(30, 190, 60, 30); idField = new JTextField(); idField.setBounds(95, 50, 100, 30); nameField = new JTextField(); nameField.setBounds(95, 85, 100, 30); male = new JRadioButton("Male"); male.setBounds(95, 120, 60, 30); male.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { gender= "Male"; } }); female = new JRadioButton("Female"); female.setBounds(155,120, 70, 30); female.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { gender ="Female"; } }); bg = new ButtonGroup(); bg.add(male); bg.add(female); addressField = new JTextField(); addressField.setBounds(95, 155, 100, 30); contactField = new JTextField(); contactField.setBounds(95, 190, 100, 30); exitButton = new JButton("Exit"); exitButton.setBounds(25, 230, 80, 30); exitButton.addActionListener(this); registerButton = new JButton("Register"); registerButton.setBounds(110, 230, 100, 30); registerButton.addActionListener(this); add(title); add(idLabel); add(nameLabel); add(genderLabel); add(addressLabel); add(contactLabel); add(idField); add(nameField); add(male); add(female); add(addressField); add(contactField); add(exitButton); add(registerButton); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setResizable(false); setVisible(true); } public void actionPerformed(ActionEvent ae) { if(ae.getSource()==registerButton)new LoginFrame(); else System.exit(0); } } بالتوفيق... تم التعديل في 26 ديسمبر 2018 بواسطة Entesar ElBanna no reason اقتباس
السؤال
Ahmed Sawy
السلام عليكم , انا انشأت 2 jframe , واحدة لتسجيل الدخول , والثانية لتسجيل حساب جديد ,
والان انا اريد الكود الذى يمكن المستخدم من الضغط على "تسجيل حساب جديد" ينتقل الى jframe الخاصة ب التسجيل
انا مبتدئ واستخدم جافا نت بينز
الرجاء الافادة
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.