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

How to make special Table in java ?

بدأه Hanan Sabry في 22 أبريل 2010 · 8 رد · 1,061 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

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

418368263.jpg

فالمشكلة عندي هنا .. انا مثلا عايزة Cb, Xb , bi, Cj المتغيرات دي بتبقى اساسية في الجدول وبالطريقة اللي موجودة في الشكل دا .. وبقيت الخانات انا اللي بملاها

فاانا مش عارفة اعمل المنظر دا .. فياريت لو حد يساعدني اني اعمل جدول بالطريقة دي

وجزاكم الله كل خير (:

#2
اقتباس

فالمشكلة عندي هنا .. انا مثلا عايزة Cb, Xb , bi, Cj المتغيرات دي بتبقى اساسية في الجدول وبالطريقة اللي موجودة في الشكل دا .. وبقيت الخانات انا اللي بملاها

برجاء التوضيح

ويا ليت الكتابة تكون بالعربية الفصحى حتى نستطيع الفهم

تحياتي

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

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

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

728x90.png

#3

يعني حضرتك ... انا حاليا في الجدول الذي استطيع ان اعمله بالجافا .. بتكون ال Headers للجدول ثابتة في الجزء العلوي من الجدول

وهذا استطيع ان افعله باستخدام JTable

ولكن الان انا اريد في هذا الجدول ان تكون ال Headers في الجدول هي : Cb, Xb , bi, Cj الموضحين في الجدول

وبقية ال cells استطيع ان املاها انا باستخدام باقي الكود

يارب اكون قدرت اوصل المشكلة

#4

أولا أنا ليس لدي خبره تذكر بمسئلة ال JTable

بس أنا لو مكانك, هعمل جدول بدون headers خالص, و أعتبر كل حاجه فيه عباره عن بيانات و أثبت اللي أنا عاوزه و أغير اللي أنا عاوزه. (طريقه غير إحترافيه)

طب لو عاوزه تعملي طريقه إحترافيه, شوفي إزاي ترثي ال JTable أو TableModel ,,,,

#5

جزاك الله خير اخي هويدي ...

بس انا مازلت غير قادرة اني اعمل الشكل المطلوب .... ارجوكو يا جماعة لو اي حد يقدر يساعدني عشان مفيش وقت خااااااااااالص

#6

قم بالتعديل على الكود المرفق ... بالطريقة التي تناسبك

mytest.rar

#7

جزاك الله كل خير ... الكود فعلا فادني كتيييييييييييييييييييييييييير

بس لو سمحت عندي سؤال اخر ..

وهو كيف ان ادخل الى هذا الجدول بيانات من خلال مصفوفات موجودة عندي ..

يعني مثلا : في الصف الاول : البرنامج يقوم بادخال ارقام من خلال مصفوفة

وفي العمود الاول يقوم بادخال بيانات من خلاص مصفوفة اخري

والبيانات الموجودة في المنتصف نقوم بادخالها بمصفوفة ذات بعدين ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

ارجو ان يكون السؤال واضح ... واعتذر على الاطالة

#8

لا اعتقد بان الامر معقد بحث سريع او قرائه عن الصنف JTable سيفيدك كثيرا

شرح طريقة االاستخدام

http://java.sun.com/docs/books/tutorial/uiswing/components/table.html

امثله

http://www.java2s.com/Tutorial/Java/0240__Swing/1000__JTable.htm

امثله على model

http://www.java2s.com/Tutorial/Java/0240__Swing/1020__JTable-Model.htm

امثله على Renderer

http://www.java2s.com/Tutorial/Java/0240__Swing/1040__JTable-Renderer-Editor.htm

اما بالنسبة للمثال السابق فيمكنك التعدلي على الشفره

في TestCellRenderer

public Component getTableCellRendererComponent(JTable table, 
											Object value, 
											boolean isSelected, 
											boolean hasFocus, 
											int row, 
											int column) {  

		if(		(row==0 && column==2) ||
				(row==1 && column==0) ||
				(row==1 && column==1) ||
				(row==1 && column==2) ){
			label.setBackground(Color.GRAY);
			label.setForeground(Color.WHITE);
		}else if(column==3){
			label.setBackground(Color.RED);
			label.setForeground(Color.BLACK);
		}else{
			label.setBackground(Color.WHITE);
			label.setForeground(Color.GRAY);
		}
		label.setText(value.toString());
		return label;
	}

وفي الصنف TestTableModel يمكنك اضافة القيم من الطريقة التالية،

لا انصح بكثره اوامر IF ، حاول ان تضيف البيانات بطريقة احترافية

	@Override
	public Object getValueAt(int row, int col) {
		Object object="";
		if(row == 0){
			if(col==2){
				object="Cj";
			}
		}else if(row==1){
			if(col==0){
				object="Cb";
			}else if(col==1){
				object="Xb";
			}else if(col==2){
				object="bl";
			}
		}

		return object;
	}
1
#9

جزاك الله كل خير

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