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

الطباعه في الجافا (طباعه جدول + طباعه مرفقات أخرى )

بدأه sma88 في 10 أكتوبر 2009 · 4 رد · 1,984 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

حاول أن أكتب برنامج يحتوي على جدول JTable

بالإضافه إلى نصين إدخال وزر واحد

الملف موجود في المرفقات

كالأتي

program%20screen.gif

وحاولت أن تتم عمليه الطباعه لمحتويات التي تم إدخال

في JTextField

بالإصافه إلى محتويات الجدول في صفحه واحده

فأتمنى من لديه معرفه بذلك أن يساعدني بذلك

ومن لم يفهم كلامي أريد أن يكون المخرج قريب للهذه الصوره

التي عدلتها بالرسام لكي تكون مثل ما أصبو إليه

putput.gif

الصوره السباقه هي النتيجه التي أتمنى الحصول عليها بعد الطباعه

ولكم مني كل الشكر والإحترام

AdvancedTableExample.rar

banner1.gif

#2

بســم الله الـرحمــن الرحيــم

انصحك باستخدام الاداة القوية Jasper report

فهى قوية جدا وسهلة فى نفس الوقت

وممكن ارفاقها كاملة مع المشروع ولا تحتاج لسيرفر

والعب بقى فى التنسيق و الطباعة ذى ما تحب

بالتوفيق


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#3

بســم الله الـرحمــن الرحيــم

على فكرة الطباعة من الفورمة ممكنة

ودى طريقتها

1-اجعل الجدول والتيكست فيلدز على JPanel واحد وهنسميه printpane

2-هنضيف JPanel تانى يحتوى على الزر اللى هيقوم بعملية الطباعة

3-فى تعريف الكلاس هتضيف الجملة دى implements Printable

4-هتضيف الميثود اللى جاية للكود

	public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) {

	if(pageIndex>0) return NO_SUCH_PAGE;

	Graphics2D g2d=(Graphics2D)graphics;
	g2d.translate(pageFormat.getImageableX(),pageFormat.getImageableY());

	printpane.print(graphics);// note printpane is our JPanel


		return PAGE_EXISTS;
	}

4-هتكتب الكود اللى جاى فى الزر اللى هيطبع

	private void print_actionPerformed(ActionEvent e) {

	 PrinterJob job=PrinterJob.getPrinterJob();

	 job.setPrintable(this);

	boolean ok=job.printDialog();

	if(ok){

			try {
				job.print();
			} catch (PrinterException f) {
				f.printStackTrace();
			}
		}

	}

وماتنساش عمل ال import اللازمة

import java.awt.print.PageFormat;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;

import java.awt.Graphics;
import java.awt.Graphics2D;

وشوف النتيجة لكن اظن انه لا غنى عن Jasper Report

ولو جربته هتعرف الفرق

بالتوفيق

تم تعديل هذه المشاركة بواسطة MOHAMED FATHEI في 10 أكتوبر 2009 في 08:19


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#4

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

مشكور على الرد السريع

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

لكن المشكله إنو في بعض البيانات في الجدول لا بتطبع لاحظ هذه الصوره

454.GIF

أخزاني قد ذكرتم Jasper report

ماهي هذه الأداه ؟ لأن لا عرف عنها شئ فالرداء التكرم وإعطائي طرف الخيط حتى أستطيع المواصله عليه

مع الشكر لكم

الملف المرفق فيه أخر التعديلات التي قمت بإجراءها

MOHAMED FATHEI كتب:
بســم الله الـرحمــن الرحيــم

على فكرة الطباعة من الفورمة ممكنة

ودى طريقتها

1-اجعل الجدول والتيكست فيلدز على JPanel واحد وهنسميه printpane

2-هنضيف JPanel تانى يحتوى على الزر اللى هيقوم بعملية الطباعة

3-فى تعريف الكلاس هتضيف الجملة دى implements Printable

4-هتضيف الميثود اللى جاية للكود

	public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) {

	 if(pageIndex>0) return NO_SUCH_PAGE;

	 Graphics2D g2d=(Graphics2D)graphics;
	 g2d.translate(pageFormat.getImageableX(),pageFormat.getImageableY());

	 printpane.print(graphics);// note printpane is our JPanel


		 return PAGE_EXISTS;
	 }

4-هتكتب الكود اللى جاى فى الزر اللى هيطبع

	private void print_actionPerformed(ActionEvent e) {

	  PrinterJob job=PrinterJob.getPrinterJob();

	  job.setPrintable(this);

	 boolean ok=job.printDialog();

	 if(ok){

			 try {
				 job.print();
			 } catch (PrinterException f) {
				 f.printStackTrace();
			 }
		 }

	 }

وماتنساش عمل ال import اللازمة

import java.awt.print.PageFormat;
 import java.awt.print.Printable;
 import java.awt.print.PrinterException;
 import java.awt.print.PrinterJob;

 import java.awt.Graphics;
 import java.awt.Graphics2D;

وشوف النتيجة لكن اظن انه لا غنى عن Jasper Report

ولو جربته هتعرف الفرق

بالتوفيق

AdvancedTableExample.rar

banner1.gif

#5

بســم الله الـرحمــن الرحيــم

jasper report تم طرحه فى اكثر من موضوع فى المنتدى

وده رابط هيساعدك كتير فيه ارتباطات التحميل للادوات وكتب عربية لطريقة الاستخدام والتدريب

من شرح الاخ أحمد نعناع

اضغط على الرابط التالى/index.php?showtopic=176502&hl=jasper+report

على فكرة التقارير نصف المشروع فلا ارى اى فائدة للمشروع ان لم يقدم التقارير المناسبة

حاول التعلم ولو احتجت اى مساعدة احنا فى الخدمة

لانه لولا مساعدات الاخرين ماتعلمنا نحن

ملحوظة الرابط ده احد المواضيع اللى ظهرت لى نتيجة البحث فى المنتدى

استخدام البحث يوفر الوقت والجهد

وبالتوفيق ان شاء الله

تم تعديل هذه المشاركة بواسطة MOHAMED FATHEI في 10 أكتوبر 2009 في 10:43


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

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

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

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

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

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