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

حفظ عناصر الــ ListBox في البرنامج و طباعتها

مغلقمُجاب
بدأه mido2010bona في 26 ديسمبر 2012 · 6 رد · 2,335 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لو سمحتم انا عملت برنامج على فيجوال بيسك 5 وفى البرنامج دة فى ليست بوكس انا كنت عايز احفظ items بتاعتة فى البرنامج نفسة مش برة فى textلان انا عايز اعمل كذا ليست بوكس واحفظة فعايز كل ما اجى اشغل البرنامج القى اللى انا كتبتة قبل ما اقفل البرنامج ويا ريت الاجابة علشان انا عايز اخلص منة علشان اديلى فترة طويلة فية وكنت كمان عايز لو حد يعرف طريقة للطبع اكتر من 102item علشان انا كان معاية كود اخرة 102 item ولكم جزيل الشكر

تم تعديل هذه المشاركة بواسطة mido2010bona في 27 ديسمبر 2012 في 01:40

#2

السلام عليكم ...

  1. يرجى وضع عنوان مناسب للموضوع (تم التعديل) ..
  2. بالنسبة للطباعة , ارسل الكود للأعضاء كي يتم الاستفادة او التعديل عليه .

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 27 ديسمبر 2012 في 16:03

1

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#3

فين الاجابة

لو سمحت يا استاذ houssam11350_11350 انا مطلوب منى البرنامج دة ضرورى بعد يومين

تم تعديل هذه المشاركة بواسطة mido2010bona في 26 ديسمبر 2012 في 23:51

#4

السلام عليكم ..

  1. اقتباس
    لو سمحت يا استاذ houssam11350_11350 انا مطلوب منى البرنامج دة ضرورى بعد يومين
    وضح طلبك اكثر للاعضاء , كيف تريد الحفظ في البرنامج نفسه و ليس ضمن text (هذا غير ممكن لأن البرنامج التنفيذي لا يمكن ان نغيير في محتوياته) و ما المانع من الحفظ في ملف خارجي او ضمن الريجستري ..
  2. يفضل ان ترسل كود الطباعة الذي يطبع العناصر كي يتم التعديل عليه ....

نرجو من الأعضاء التفاعل ..

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 27 ديسمبر 2012 في 16:03

1

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#5

لو سمحت ممكن تكلمنى على ايميلى (تمت إزالة الأيميل من قبل المشرف)

دة كود الطباعة

Imports System.Drawing.Printing
Public Class Form1

    Inherits System.Windows.Forms.Form
    Private WithEvents DocToPrint As New PrintDocument
    Dim I As Integer = 0

    Private Sub DocToPrint_PrintPage(ByVal Sender As Object, ByVal E As System.Drawing.Printing.PrintPageEventArgs) Handles DocToPrint.PrintPage
        For I = 0 To ListBox1.Items.Count - 1
            E.Graphics.DrawString(ListBox1.Items(I).ToString(), Font _
            , Brushes.Black, E.MarginBounds.Left, ListBox1.ItemHeight * I)
        Next
    End Sub
 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        For I As Integer = 1 To 84
            ListBox1.Items.Add(I.ToString("000"))
        Next


    End Sub

وانا اسف على الازعاج لان بصراحة انا مش لاقى اى طريقة

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 27 ديسمبر 2012 في 16:02 — السبب: إزالة الايمل و تنسيق الكود

#6

السلام عليكم ...

  1. هذا كود طباعة كل 90 من الــ Items في صفحة :
    Imports System.Drawing.Printing
    Public Class Form4
    	Inherits System.Windows.Forms.Form
    
    	Private WithEvents DocToPrint As New PrintDocument
    	Dim currentItemToPrint = 0	  
    	Dim I As Integer = 0
    
    	Private Sub DocToPrint_PrintPage(ByVal Sender As Object, ByVal E As System.Drawing.Printing.PrintPageEventArgs) Handles DocToPrint.PrintPage
        	'Dim itemsPerPage = ((E.PageSettings.PrintableArea.Height / 100) * E.Graphics.DpiY) / ListBox1.ItemHeight
        	'E.PageSettings.PrintableArea.
        	E.Graphics.PageUnit = System.Drawing.GraphicsUnit.Pixel
        	Dim itemsPerPage = 90
        	Dim lastItem = currentItemToPrint + itemsPerPage
        	Dim t = 0
        	For I = currentItemToPrint To lastItem
            	If I >= ListBox1.Items.Count Then
                	E.HasMorePages = False
                	Exit Sub
            	End If
    
            	currentItemToPrint += 1
            	t += 1
            	E.Graphics.DrawString(ListBox1.Items(I).ToString(), Font _
           	, Brushes.Black, E.MarginBounds.Left, ListBox1.ItemHeight * t)
        	Next
        	E.HasMorePages = currentItemToPrint < ListBox1.Items.Count
        	'For I = 0 To ListBox1.Items.Count - 1
        	'	E.Graphics.DrawString(ListBox1.Items(I).ToString(), Font _
        	'	, Brushes.Black, E.MarginBounds.Left, ListBox1.ItemHeight * I)
        	'Next
    	End Sub
    End Class

  2. و كود زر الطباعة :
     Private Sub Button6_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
        	currentItemToPrint = 0
        	DocToPrint.Print()
    	End Sub

1

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#7 أفضل إجابة

انا حبيت افيدكم انا اخدت الكود دة من الاستاذ المبرمج houssam11350_11350 Icon وهو كود للحفظ للاستفادة منة

اول شئ يجب عليك ان تعمل 2 buttonالاول save والثانى load دة كود الحفظ(save)

Private Sub Button4_Click_4(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

If branchName Is Nothing Then

MsgBox("يجب تحديد فرع أولا")

Exit Sub

End If

Dim saveval As String = 1

Dim directory = "c:\myWork\" & branchName

If Not IO.Directory.Exists(directory) Then IO.Directory.CreateDirectory(directory)

Dim listpath As String = directory & " \احمد بنه.احمد بنه"

If Not IO.File.Exists(listpath) Then IO.File.Create(listpath).Close()

Dim listwrite As System.IO.StreamWriter

listwrite = My.Computer.FileSystem. _

OpenTextFileWriter(listpath, False)

saveval = saveval + 1

For i As Integer = 0 To ListBox1.Items.Count - 1

ListBox1.SetSelected(i, True)

listwrite.WriteLine(ListBox1.Items(i))

Next

listwrite.Close()

IsChange = False

End Sub

ودة كود(load)

Private Sub Button3_Click_5(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

If branchName Is Nothing Then

MsgBox("يجب تحديد فرع أولا")

Exit Sub

End If

ListBox1.Items.Clear()

Dim listpath As String = "c:\myWork\" & branchName & " \احمد بنه.احمد بنه"

If Not IO.File.Exists(listpath) Then

MsgBox("لا توجد بيانات محفوظة سابقا ")

Exit Sub

End If

ListBox1.Items.Clear()

Dim r As IO.StreamReader

r = New IO.StreamReader(listpath, True)

While (r.Peek() > -1)

ListBox1.Items.Add(r.ReadLine)

End While

r.Close()

End Sub

الكود دة اللى عطهولى المشرف الاستاذ حسام جزاة الله كل خير

هذا الموضوع مغلق.

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

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

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

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

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