السلام عليكــم ورحمـة الله وبركاتــه ،،
الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين
بعد التحيه فأننى تواجهنى مشكله فى اكشن زرار معين وهذا هو الاكشن نفسه
{
if(e.getSource()==jbt)
{
ObjectInputStream in=null;
Password s=null;
s=new Password("zeita","5077255");
s.writePassword();
try
{
in=new ObjectInputStream(new FileInputStream("Password.dat"));
s= (Password)in.readObject();
if(s.getName().equals(t.getText()))
{
if((s.getPassword()).equals(new String(tp.getPassword())))
{
new Register();
}
else
JOptionPane.showMessageDialog(this,"خطأ"
,"INCORRECT PASSWORD",JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showMessageDialog(this,"خطأ"
,"INCORRECT USER NAME",JOptionPane.INFORMATION_MESSAGE);
}
in.close();
}
catch(Exception ex)
{
}
}
}
public void actionPerformed(ActionEvent e)
وهذه هى الكلاس Register
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import java.sql.*;
// Register student panel
class Register extends JPanel implements ActionListener
{
// Button for registering a student
private JButton jbtAdd,jbtUpdate,jbtDelete;
JTextField jtfName = new JTextField(32);
JTextField jtfNumber = new JTextField(6);
JTextField jtfAddress = new JTextField(6);
JTextField jtfDate = new JTextField(6);
JTextField jtfType = new JTextField(6);
JTextField jtfReligion = new JTextField(6);
JTextField jtfJob = new JTextField(6);
// Create a student panel
// Constructor
public Register()
{
// Panel p to hold four navigator buttons
JPanel p = new JPanel();
p.setLayout(new FlowLayout(FlowLayout.CENTER));
p.add(jbtDelete = new JButton("حذف"));
p.add(jbtUpdate = new JButton("تعديل"));
p.add(jbtAdd = new JButton("اضافة"));
JPanel p1 = new JPanel();
p1.setLayout(new FlowLayout(FlowLayout.CENTER));
p1.add(jtfNumber=new JTextField(12));
p1.add( new JLabel("الرقم القومى"));
p1.add(jtfName=new JTextField(24));
p1.add(new JLabel("الاسم"));
JPanel p2 = new JPanel();
p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
p2.add(jtfDate=new JTextField(10));
p2.add( new JLabel("تاريخ الميلاد"));
p2.add(jtfAddress=new JTextField(20));
p2.add( new JLabel("محل الاقامة"));
JPanel p3 = new JPanel();
p3.setLayout(new FlowLayout(FlowLayout.RIGHT));
p3.add(jtfJob=new JTextField(8));
p3.add( new JLabel("المهنة"));
p3.add(jtfReligion=new JTextField(8));
p3.add( new JLabel("الديانة"));
p3.add(jtfType=new JTextField(8));
p3.add( new JLabel("النوع"));
JPanel p4=new JPanel ();
p4.setLayout(new GridLayout(3,1));
p4.add(p1);
p4.add(p2);
p4.add(p3);
// Add studentPanel and jbtRegister in the panel
setLayout(new BorderLayout());
add(p4, BorderLayout.CENTER);
add(p, BorderLayout.SOUTH);
// Register listener
jbtAdd.addActionListener(this);
jbtUpdate.addActionListener(this);
jbtDelete.addActionListener(this);
}
// Handle navigation button actions
public void actionPerformed(ActionEvent e)
{
//وهذا عن طريقه يتم ادخال بيانات جديده فى قاعده البيانات عن الضغط على زرار اضافه
if (e.getSource() == jbtAdd)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:3mad","", "");
Statement stmt = con.createStatement( );
String SQLText;
int ResultCode;
//insert data
SQLText="insert into Student values('" + jtfName.getText() + "','" + jtfNumber.getText() + "','" + jtfAddress.getText() + "','" + jtfDate.getText() + "','" + jtfType.getText() + "','" + jtfReligion.getText() + "','" + jtfJob.getText() + "');";
ResultCode= stmt.executeUpdate( SQLText );
}
catch (ClassNotFoundException ea)
{
System.out.println("Unable to load Driver Class");
return;
}
catch (SQLException se)
{
System.out.println("SQL Exception: " + se.getMessage( ));
se.printStackTrace(System.out);
}
catch (java.lang.Exception ex)
{
System.out.println( "** Error on create Student table ** " );
ex.printStackTrace ();
}
}
//وهذا يقوم بتعديل الاسم لشخص اذا كان فيه اخطاء او ما شابه ذلك عن طريق معرفه القم القومى له
else if (e.getSource() == jbtUpdate)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:3mad","", "");
Statement stmt = con.createStatement( );
String SQLText;
int ResultCode;
// UpDate Data
SQLText="update Student set name ='" + jtfName.getText() + "' where nationalNum = " + jtfNumber.getText() + " ";
ResultCode= stmt.executeUpdate( SQLText );
}
catch (ClassNotFoundException ea)
{
System.out.println("Unable to load Driver Class");
return;
}
catch (SQLException se)
{
System.out.println("SQL Exception: " + se.getMessage( ));
se.printStackTrace(System.out);
}
catch (java.lang.Exception ex)
{
System.out.println( "** Error on create Student table ** " );
ex.printStackTrace ();
}
}
// وهذا يقوم بحذف بيان كامل من قاعده البيانات عن طريق ادخال الرقم القومى له مع الضغط على زرار حذف
else if (e.getSource() == jbtDelete)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:3mad","", "");
Statement stmt = con.createStatement( );
String SQLText;
int ResultCode;
//delete Data
SQLText="delete from Student where nationalNum =" + jtfNumber.getText() + "";
ResultCode= stmt.executeUpdate( SQLText );
}
catch (ClassNotFoundException ea)
{
System.out.println("Unable to load Driver Class");
return;
}
catch (SQLException se)
{
System.out.println("SQL Exception: " + se.getMessage( ));
se.printStackTrace(System.out);
}
catch (java.lang.Exception ex)
{
System.out.println( "** Error on create Student table ** " );
ex.printStackTrace ();
}
}
}
}ملحوظه البرنامج لا يخرج اى اخطاء البرنامج يوجد فى المرفقات لمذيد من الاطلاع اتمنى ان اجد المساعده , ولكم جزيل الشكر
