الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تخزين البيانات بعد تغبئتها بجدول واسترجاعها

بدأه angelita في 27 أبريل 2009 · 20 رد · 1,262 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

كيف ممكن اخزن المعلومات الي ادخلها لجدول عن طريق الانترفيس

او اني ارجع الداتا الموحوده بملف معين لهدا الجدول

متلا لو كان عندي جدول وملأاته باسماء طلاب

كيف ممكن اخزن هاي المعلومات

ولو بدي بس طالب معين كيف ممكن احصل عليه

طل هدا باستعمال ال files in java

package newProject;

public class NewJFrame extends javax.swing.JFrame {

	/** Creates new form NewJFrame */
	public NewJFrame() {
		initComponents();
	}

	   // <editor-fold defaultstate="collapsed" desc=" Generated Code ">
	private void initComponents() {
		jScrollPane1 = new javax.swing.JScrollPane();
		Sup_list = new javax.swing.JTable();

		setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
		jScrollPane1.addInputMethodListener(new java.awt.event.InputMethodListener() {
			public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
			}
			public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
				jScrollPane1InputMethodTextChanged(evt);
			}
		});

		Sup_list.setModel(new javax.swing.table.DefaultTableModel(
			new Object [][] {
				{null, null, null, null},
				{null, null, null, null},
				{null, null, null, null},
				{null, null, null, null}
			},
			new String [] {
				"Title 1", "Title 2", "Title 3", "Title 4"
			}
		));
		jScrollPane1.setViewportView(Sup_list);

		getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);

		pack();
	}// </editor-fold>

	private void jScrollPane1InputMethodTextChanged(java.awt.event.InputMethodEvent evt) {													
//TODO add your handling code here:
	}												   

		public static void main(String args[]) {
		java.awt.EventQueue.invokeLater(new Runnable() {
			public void run() {
				new NewJFrame().setVisible(true);
			}
		});
	}

	// Variables declaration 
	private javax.swing.JTable Sup_list;
	private javax.swing.JScrollPane jScrollPane1;
	// End of variables declaration

}

يا ريت تساعدوني بالكود

#2

السلام عليكــم ورحمـة الله وبركاتــه ،،

قراءة بيانات الجدول


for (int j = 0; j < Sup_list.getColumnCount(); j++) {
Object value = Sup_list.getValueAt(i, j);
}
}
 for (int i = 0; i < Sup_list.getRowCount(); i++) {

الكتابة في ملف


try{
writer = new PrintWriter(new FileWriter("file.txt"));
writer.println("Some thing");
}
}
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (writer != null)
writer.close();
}
 PrintWriter writer = null;

كتابة بيانات الجدول في الملف


try{
writer = new PrintWriter(new FileWriter("file.txt"));
for (int i = 0; i < Sup_list.getRowCount(); i++) {
for (int j = 0; j < Sup_list.getColumnCount(); j++) {
Object value = Sup_list.getValueAt(i, j);
if (value != null)
writer.println(value.toString());
}
}
JOptionPane.showMessageDialog(NewJFrame.this, "Data saved");
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (writer != null)
writer.close();
}
 PrintWriter writer = null;

الكلاس كاملة


import java.io.*;
import java.awt.event.*;
import javax.swing.*;

public class NewJFrame extends javax.swing.JFrame {

/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
}

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
Sup_list = new javax.swing.JTable();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jScrollPane1.addInputMethodListener(new java.awt.event.InputMethodListener() {
public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
}
public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
jScrollPane1InputMethodTextChanged(evt);
}
});

Sup_list.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
jScrollPane1.setViewportView(Sup_list);

btnSaveData = new JButton("Save table data");
btnSaveData.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
try{
writer = new PrintWriter(new FileWriter("file.txt"));
for (int i = 0; i < Sup_list.getRowCount(); i++) {
for (int j = 0; j < Sup_list.getColumnCount(); j++) {
Object value = Sup_list.getValueAt(i, j);
if (value != null)
writer.println(value.toString());
}
}
JOptionPane.showMessageDialog(NewJFrame.this, "Data saved");
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (writer != null)
writer.close();
}
}
});
getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
getContentPane().add(btnSaveData, java.awt.BorderLayout.SOUTH);

pack();
}// </editor-fold>

private void jScrollPane1InputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
//TODO add your handling code here:
}

public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}

// Variables declaration
private javax.swing.JTable Sup_list;
private javax.swing.JScrollPane jScrollPane1;
private JButton btnSaveData;
private PrintWriter writer;
// End of variables declaration

}
 package newProject;

تم تعديل هذه المشاركة بواسطة herch في 27 أبريل 2009 في 17:30

#3

شكرا كتير لك يا اخي

ساعدتني بشكل كبير

بس بالنسبه للقراءه من الملف لو بدي اقرا عنصر واحد بس محدد يعني

كيف ممن استدعي داتا معينه بالجدول من دون الجدول كله

لو كانت احدى مدخلات الجدول مسبقا هي (كرة)

على سبيل المثال

وكيف ممكن اجيبها من الملف لوحهدها

#4

السلام عليكــم ورحمـة الله وبركاتــه ،،

لم أفهم السؤال جيدا

إذا كنت تعنين كيف تقرئين خلية معينة من الجدول، استعملي getValueAt(int row, int column)

row : السطر

column : العمود

إذا كنت تريدين مثلا قراءة الخلية التي توجد في السطر الثاني / العمود الثالث

<span class="postcolor">Object value = Sup_list.getValueAt(1, 2);</span>

الترقيم يبدأ من الصفر

#5

السلام عليكــم ورحمـة الله وبركاتــه ،،

ايوة كنت اقصد خلية معينة من الجدول

لكن بدون ما احدد موقعها بالمصفوفه

،

يعني متلا لو كان عندي الجدول كما بالشكل

كرة قلم

تفاحة بالون

يعني متلا بدي قلم بدون ما احدد انه بالعمود التاني من الصف الاول

\

يعني كأني بتأكد ازا موجود او لا حتى متلا ازا كان موجود اجيب كلمة (قلم) مع صورته

يعني الهدف من هيك انه استعمل الداتا اللي كمن مخزنتها لشي تاني

وشكرا جزيلا لك يا اخي

صحيح شو اسم الفنكشن اللي بقدر من خلالها اقرا محتويات الجدول اللي خزنتها بالتكست فايل

تم تعديل هذه المشاركة بواسطة angelita في 27 أبريل 2009 في 21:49

#6

السلام عليكــم ورحمـة الله وبركاتــه ،،

سيكون أفضل لو تحددين ماذا تريدين بالضبط

يمكنك مثلا أن تحصلي على Vector يحتوي على معطيات الجدول، واستعمال الميثود contains(Object o) لمعرفة إذا ما كان يحتوي على معطى ما


//the vector returned is a vector of vectors --> a vector containing other vectors, each vector represent a row
for (Object o : data) {
Vector v = (Vector)o;
for (Object oo : v) {
System.out.println(oo);
}
}
 Vector data = ((DefaultTableModel)Sup_list.getModel()).getDataVector();

#7

انا بالزبط بدي واحد يعبي اسماء طلاب بجدول ويتخزن ب تكست فايل

وييجي واحد تاني يبحث عن اسم طالب ضمن هدا الفايل ولما يجد الاسم

يظهر اسم هدا الطالب وصورته

عكل شكرا الك كتير يا خيو غلبتك كتير اتحملنا مبتدئين لسا

تم تعديل هذه المشاركة بواسطة angelita في 27 أبريل 2009 في 22:04

#8

السلام عليكــم ورحمـة الله وبركاتــه ،،

أظن أنك لم تفكري في الأمر بالشكل الكافي

مثلا من أين ستأتين بالصورة؟

أين يقوم المستعمل بكتابة الإسم المبحؤث عنه؟

على كل حال سننسى الصورة، وسأفترض أن المستعمل سيقوم بكتابة الإسم المبحوث عنه في الخلية الأولى

البحث في الملف


try{
//when you work with arabic, you have to use utf8, and we use InputStreamReader because it let us specify the charset (utf8)
reader = new BufferedReader(new InputStreamReader(new FileInputStream("file.txt"), "UTF-8"));
String line;
String valueToFind = Sup_list.getValueAt(0, 0).toString();
while ((line = reader.readLine()) != null) {
if (line.equals(valueToFind))
System.out.println(line);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (reader != null)
try {
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
 BufferedReader reader = null;

الكلاس كاملة معدلة


import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.util.Vector;

public class NewJFrame extends javax.swing.JFrame {

/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
}

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
Sup_list = new javax.swing.JTable();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jScrollPane1.addInputMethodListener(new java.awt.event.InputMethodListener() {
public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
}
public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
jScrollPane1InputMethodTextChanged(evt);
}
});

Sup_list.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
jScrollPane1.setViewportView(Sup_list);

btnSaveData = new JButton("Save table data");
btnSaveData.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
try{
writer = new PrintWriter("file.txt", "UTF-8");
for (int i = 0; i < Sup_list.getRowCount(); i++) {
for (int j = 0; j < Sup_list.getColumnCount(); j++) {
Object value = Sup_list.getValueAt(i, j);
if (value != null)
writer.println(value.toString());
}
}
JOptionPane.showMessageDialog(NewJFrame.this, "Data saved");
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (writer != null)
writer.close();
}
}
});
btnFind = new JButton("Find");
btnFind.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
BufferedReader reader = null;
try{
reader = new BufferedReader(new InputStreamReader(new FileInputStream("file.txt"), "UTF-8"));
String line;
String valueToFind = Sup_list.getValueAt(0, 0).toString();
while ((line = reader.readLine()) != null) {
if (line.equals(valueToFind))
{
System.out.println(line);
break;
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (reader != null)
try {
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
JPanel pnButtons = new JPanel();
pnButtons.add(btnSaveData);
pnButtons.add(btnFind);
getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
getContentPane().add(pnButtons, java.awt.BorderLayout.SOUTH);

pack();
}// </editor-fold>

private void jScrollPane1InputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
//TODO add your handling code here:
}

public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}

// Variables declaration
private javax.swing.JTable Sup_list;
private javax.swing.JScrollPane jScrollPane1;
private JButton btnSaveData, btnFind;
private PrintWriter writer;
// End of variables declaration

}
import java.io.*;

#9

السلام عليكم

لا لم اقصد هيك

كنت اريد زر الفايند يكون موجود بمكان تاني والكبسه عليه هي اللي تجيبلي خليه من الجدول اللي سابقا بكون معبى يعني صفحه تانيه عشان هيك كنت اسأل عن خليه معينه

اصلا وحوده هيك ما بفيد

حلص مو مهم

بس بدي اسالك انه كيف ممكن اعمل تعديل على الجدول بعد ما املأه ( اقصد الداتا القديمه )

يعني لما اٌقرأه اصير اقدر اعدل عالداتا القديمه الموجوده المخزنه فيه

يعني تعبئه الجدول لما يكون فارغ بكون مره واي مرات اخرى يصير تعديل بس

تم تعديل هذه المشاركة بواسطة angelita في 28 أبريل 2009 في 07:37

#10

السلام عليكــم ورحمـة الله وبركاتــه ،،

الفكرة ليست واضحة :S

1 -- تريدين أن يقوم المستعمل بكتابة الأسماء، وعند الضغط على الزر، تسجل هذه الأسماء في ملف --> OK

2 -- هل تريدين تحميل المعطيات الموجودة في الملف إلى الجدول، ثم تعديلها، ثم كتابتها في الملف؟؟

اقتباس
بس بدي اسالك انه كيف ممكن اعمل تعديل على الجدول بعد ما املأه ( اقصد الداتا القديمه )

يعني لما اٌقرأه اصير اقدر اعدل عالداتا القديمه الموجوده المخزنه فيه

أين هذا المكان الثاني؟؟ أعطيتنا فقط الكلاس NewJFrame

#11
herch كتب:

السلام عليكــم ورحمـة الله وبركاتــه ،،

الفكرة ليست واضحة :S

1 -- تريدين أن يقوم المستعمل بكتابة الأسماء، وعند الضغط على الزر، تسجل هذه الأسماء في ملف --> OK

2 -- هل تريدين تحميل المعطيات الموجودة في الملف إلى الجدول، ثم تعديلها، ثم كتابتها في الملف؟؟

أين هذا المكان الثاني؟؟ أعطيتنا فقط الكلاس NewJFrame

ايوة تماما هدا اللي اريده ا

بالنسبه للمكان التاني اه بعرف انه ما اعطيتك غير هدا الكلاس لانو ما عرفت اعمل اللي بدي اياه

وهو تحميل المعطيات الموجودة في الملف إلى الجدول، ثم تعديلها، ثم كتابتها في الملف

#12

السلام عليكــم ورحمـة الله وبركاتــه ،،

بالنسبة لتحميل المعطيات


try{
reader = new BufferedReader(new InputStreamReader(new FileInputStream("file.txt"), "UTF-8"));
String value;
int x = 0;
while ((value = reader.readLine()) != null) {
int row = x/Sup_list.getColumnCount();
int col = x - (row*Sup_list.getColumnCount());
Sup_list.setValueAt(value, row, col);
x++;
}
JOptionPane.showMessageDialog(NewJFrame.this, "Data loaded");
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (reader != null)
try {
reader.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
 BufferedReader reader;

الكلاس كاملة معدلة


import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.util.Vector;

public class NewJFrame extends javax.swing.JFrame {

/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
}

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
Sup_list = new javax.swing.JTable();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jScrollPane1.addInputMethodListener(new java.awt.event.InputMethodListener() {
public void caretPositionChanged(java.awt.event.InputMethodEvent evt) {
}
public void inputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
jScrollPane1InputMethodTextChanged(evt);
}
});

Sup_list.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
jScrollPane1.setViewportView(Sup_list);

btnSaveData = new JButton("Save table data");
btnSaveData.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
try{
writer = new PrintWriter("file.txt", "UTF-8");
for (int i = 0; i < Sup_list.getRowCount(); i++) {
for (int j = 0; j < Sup_list.getColumnCount(); j++) {
Object value = Sup_list.getValueAt(i, j);
if (value != null)
writer.println(value.toString());
}
}
JOptionPane.showMessageDialog(NewJFrame.this, "Data saved");
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (writer != null)
writer.close();
}
}
});
btnLoadData = new JButton("Load data");
btnLoadData.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
try{
reader = new BufferedReader(new InputStreamReader(new FileInputStream("file.txt"), "UTF-8"));
String value;
int x = 0;
while ((value = reader.readLine()) != null) {
int row = x/Sup_list.getColumnCount();
int col = x - (row*Sup_list.getColumnCount());
Sup_list.setValueAt(value, row, col);
x++;
}
JOptionPane.showMessageDialog(NewJFrame.this, "Data loaded");
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
if (reader != null)
try {
reader.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
});
JPanel pnButtons = new JPanel();
pnButtons.add(btnSaveData);
pnButtons.add(btnLoadData);
getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
getContentPane().add(pnButtons, java.awt.BorderLayout.SOUTH);

pack();
}// </editor-fold>

private void jScrollPane1InputMethodTextChanged(java.awt.event.InputMethodEvent evt) {
//TODO add your handling code here:
}

public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}

// Variables declaration
private javax.swing.JTable Sup_list;
private javax.swing.JScrollPane jScrollPane1;
private JButton btnSaveData, btnLoadData;
private PrintWriter writer;
private BufferedReader reader;
// End of variables declaration

}
 import java.io.*;

بالنسبة للبحث، فكري أولا بطريقة عملها

طبعا إذا لم تفهمي شيئا في الكود إسألي عنه، لن تستفيدي شيئا إذا قمت فقط بنسخه

#13
herch كتب:

السلام عليكــم ورحمـة الله وبركاتــه ،،

بالنسبة لتحميل المعطيات

ما فهمت هدا


} catch (IOException ioe) {
ioe.printStackTrace();
} finally {




استعملنا هنا ال سكرول بين ك رفرنس بدل كل خليه في الجدول ولا شو ؟
jScrollPane1.addInputMethodListener(new java.awt.event.InputMethodListener
هاي لعرض الجدول ؟ jScrollPane1.setViewportView(Sup_list);


ممكن رموز غير الانجليزي ؟ UTF-8 لشو writer = new PrintWriter("file.txt", "UTF-8");

هدا ما فهمتو ؟؟؟؟



java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {


}

بالنسبه للبحثث في الحدول


int col = 0;

for(int i=0;i<rows;i++)
{
String value = (String)((DefaultTableModel)Table.getModel()).getValueAt(i, col);
//If the item is in the table
if(value.equals("بدي ياه يكون جاي من الكيبورد بس ما بعرف الكود ")
{

//get from test file
}
}
]
int rows = ((DefaultTableModel)Table.getModel()).getRowCount();

بس كيف اربطه بانو يدور ضمن التكست فايل اللي كان قبل

تم تعديل هذه المشاركة بواسطة angelita في 3 مايو 2009 في 18:18

#14

السلام عليكــم ورحمـة الله وبركاتــه ،،

ممكن تعدلي السؤال لأنه لا شيء واضح

بالنسبة لهذه السطور، ما المشكل فيها؟؟


ioe.printStackTrace();
} finally {
} catch (IOException ioe) {

بعض الميثود ممكن أن تحدث IOException لذلك نقوم بعمل catch


public void run() {

}
 java.awt.EventQueue.invokeLater(new Runnable() {

لست أنا من كتب هذه السطور، بل أنت

هي تعني أنك ستنفدين البرنامج في الEDT

"Event Dispatch Thread"

لفهم ما هو الEDT

http://java.sun.com/docs/books/tutorial/ui...y/dispatch.html

تم تعديل هذه المشاركة بواسطة herch في 3 مايو 2009 في 18:33

#15

هل هدا الكود صحيح ازا كنت اريد البحث في الجدول عن داتا معينه

int rows = ((DefaultTableModel)Table.getModel()).getRowCount();
int col = 0;

for(int i=0;i<rows;i++)
{
	 String value = (String)((DefaultTableModel)Table.getModel()).getValueAt(i, col);
	 //If the item is  in the table
	 if(value.equals("some value ")
	 { 
		   //get from test file
	 }
}

السؤال التاني ازا كانت الداتا اللي ابحث عنها ادخلها عن طريق الكيبورد

شو الميثود اللي بحتاحها

وكيف اخليه انه اول ما المستغمل يدخل الكلمه ينتقل للبخث عنها في الجدول

#16

السلام عليكــم ورحمـة الله وبركاتــه ،،

يا أختي من فضلك وضحي ما تريدين بشكل أفضل

نحن لا نمتلك قدرات سحرية حتى نستطيع تخمين ما تريدين

بالنسبة للكود الذي أعطيته، فينقصه بعض الأشياء


int cols = table.getModel()).getColumnCount();
boolean found = false;

for(int i = 0; i < rows; i++)
{
for(int j = 0; j < cols; j++) {
String value = (String)table.getValueAt(i, j);

if(value.equals("someValue") {
System.out.println("Value found");
found = true;
break;
}
}
if (found)
break;
}
int rows = table.getModel()).getRowCount();

ممكن تستعملي JOptionPane.showInputDialog(Object message) لتظلبي من المستعمل إدخال الكلمة التي يريد

#17

مثلا بلغه السي ازا كنت بدي اخلي ال يوزر يدخل شي بستغمل سكان اف

scanf()

صح

انا بدي اللي بتشتغل شغل سكان اف بس بالجافا

إن شاء الله هيك وضحت

#18

السلام عليكــم ورحمـة الله وبركاتــه ،،

JOptionPane.showInputDialog(Object message)

تعطي مثل ما في الصورة

showInputDialog01.gif

تم تعديل هذه المشاركة بواسطة herch في 3 مايو 2009 في 22:22

#19

يا أختي مشكلة اللغة العربية العامية أن الكلام فيها غير مفهوم إلا لأهل المنطقة

نقطة أخرى كتابة كلمات إنجليزية بحروف عربية تجعل مشاركاتك كارثية

لهذا لو سمحتي حاولي أن تغيري أسلوب الكتابة

بأمانة لو لم تفعلي فلن تجدي من يساعدك في نهاية المطاف

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#20

السلام عليكــم ورحمـة الله وبركاتــه

،،

خلص مو مهم اللي كنت بدي اياه قدرت اعمله

شكرا لك اخي herch

اخي herch

شو افضل كتاب جافا بتنصحني فيه للمبتدئين وللمتقدمين ايضا

#21

الكتاب الذي ابتدأت به والذي أعجبني كثيرا هو Thinking in java

بالنسبة لكل ما يتعلق بما يتعلق بالواجهات الرسومية فهناك كتاب رائع جدا Filthy Rich Client ولكنه فقط للمتقدمين

لا أستطيع أن أجزم أن هذه هي أفضل الكتب، لأنه لكل كاتب طريقته في الشرح، وما يناسبني يمكن ألا يناسبك

على كل حال، مهما كان الكتاب، فما لا يمكن الإستغناء عنه هو توثيق sun، وأيضا الدروس الموجودة في موقعهم The java tutorial

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…