تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] تعليق الكود
#4
(13-06-16, 03:20 PM)الوادي كتب : يا محمد،

جرب هذه الطريقة يمكن تناسبك، بسبب عدم امكانية معرفة النسبة المنجزة للعملية استخدمت النمط ProgressBarStyle.Marquee
PHP كود :
Public Class Form1

    Dim thr 
As Threading.Thread

    Private Sub Form1_Load
(sender As System.ObjectAs System.EventArgsHandles MyBase.Load
        CheckForIllegalCrossThreadCalls 
False

    End Sub


    
' إبدأ الارسال '
 
   Private Sub Button1_Click(sender As System.ObjectAs System.EventArgsHandles Button1.Click
        thr 
= New Threading.Thread(AddressOf task)
 
       thr.IsBackground True
        thr
.Start()
 
       ProgressBar1.Style ProgressBarStyle.Marquee
    End Sub

    
' إلغاء الارسال '
 
   Private Sub Button2_Click(sender As System.ObjectAs System.EventArgsHandles Button2.Click
        If Not IsNothing
(thrThen
            thr
.Abort()
 
           ProgressBar1.Style ProgressBarStyle.Blocks
        End 
If
 
   End Sub


    Sub task
()

 
       Try
            Dim mail 
As New MailMessage
            mail
.Subject "email"
 
           mail.To.Add(TextBox2.Text)
 
           mail.From = New MailAddress(TextBox2.Text)
 
           mail.Body "good"
 
           Dim smtp As New SmtpClient("smtp.mail.yahoo.com")
 
           smtp.EnableSsl True
            smtp
.Credentials = New System.Net.NetworkCredential(TextBox2.TextTextBox3.Text)
 
           smtp.Port "587"
 
           smtp.Send(mail)
 
           MsgBox("mail sent")
 
       Catch ex As Exception
            MessageBox
.Show(ex.Message)
 
       End Try

 
       

    End Sub

End 
Class 

الطريقة جميلة جدا والكود ظبط معي ولكن اريد شيء اخر

لو استخدمت 2 فورم
الاول فية شاشة الايميل التيكست والبوتن   و  
PHP كود :
   Sub task()

        Try
            Dim mail As New MailMessage
            mail
.Subject "email"
            mail.To.Add(TextBox2.Text)
            mail.From = New MailAddress(TextBox2.Text)
            mail.Body "good"
            Dim smtp As New SmtpClient("smtp.mail.yahoo.com")
            smtp.EnableSsl True
            smtp
.Credentials = New System.Net.NetworkCredential(TextBox2.TextTextBox1.Text)
            smtp.Port "587"
            smtp.Send(mail)
            MsgBox("mail sent")
        Catch ex As Exception
            MessageBox
.Show(ex.Message)
        End Try

        form2.ProgressBar1.Style ProgressBarStyle.Blocks

    End Sub 


الفورم الثاني اليروجريس  حق الثريد

ونقلت الثريد للفورم الثاني   بالكود دة

   Dim thr As Threading.Thread

    Private Sub FORM_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        On Error Resume Next
        CheckForIllegalCrossThreadCalls = False
        thr = New Threading.Thread(AddressOf Form1.task)
        thr.IsBackground = True
        thr.Start()
        ProgressBar1.Style = ProgressBarStyle.Marquee
    End Sub

    
    Private Sub FORM_Shown(sender As Object, e As EventArgs) Handles Me.Shown
        System.Threading.Thread.Sleep(20000)
        If ProgressBar1.Style = ProgressBarStyle.Blocks Then
            Me.Close()

        Else
            System.Threading.Thread.Sleep(20000)
        End If
    End Sub
وعملت كود اغلاق للثريد بالطريقة دية

ارسل الايميل ولم يوقف البروجريس بار والفورم


الشق الثاني هل استخد م الثريد هذا باي دالة تجمد الفورم بنفس الطريقة

وجزاك اللة الف خير عني وعن غيري

(13-06-16, 03:08 PM)hitman48 كتب : ان كنت تريد ارسال من ايميل يجب تعمل دخول اولا login ثم تبعث الايميل

عملتلك مثال شوف الي يناسبك

كود :
Imports System.Net.Mail

Public Class Form1

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Timer1.Start()
   End Sub

   Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
       ProgressBar1.Increment(2)
       Label1.Text = ProgressBar1.Value & "%"
       If ProgressBar1.Value = 200 Then
           Try
           Dim SmtpServer As New SmtpClient()
           Dim mail As New MailMessage()
           SmtpServer.Credentials = New  _
 Net.NetworkCredential("amineip0123@gmail.com", "kl01234560")
           SmtpServer.Port = 587
           SmtpServer.EnableSsl = True
           SmtpServer.Host = "smtp.gmail.com"
           mail = New MailMessage()
           mail.From = New MailAddress("amineip0123@gmail.com")
           mail.To.Add("nevergiveupno20015@gmail.com")
           mail.Subject = "Test Mail"
           mail.Body = "This is for testing SMTP mail from GMAIL"

           SmtpServer.Send(mail)
           MsgBox("mail send")
       Catch ex As Exception
           MsgBox(ex.ToString)
       End Try

           Timer1.Stop()
           ProgressBar1.Value = 1
       End If
   End Sub

End Class

اشكرك اخي الكريم علي الرد ولكن الثريد افضل من التايمر
الرد }}}
تم الشكر بواسطة: hitman48


الردود في هذا الموضوع
تعليق الكود - بواسطة محمد اسماعيل - 13-06-16, 01:39 PM
RE: تعليق الكود - بواسطة hitman48 - 13-06-16, 03:08 PM
RE: تعليق الكود - بواسطة الوادي - 13-06-16, 03:20 PM
RE: تعليق الكود - بواسطة محمد اسماعيل - 13-06-16, 04:29 PM
RE: تعليق الكود - بواسطة الوادي - 13-06-16, 05:56 PM
RE: تعليق الكود - بواسطة محمد اسماعيل - 14-06-16, 10:48 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Information ما هو الخطاء في الكود ProgressBar1 Mostafa201255411 1 200 26-11-25, 08:19 PM
آخر رد: asmarsou
  [VB.NET] مساعدة تعديل على الكود ZEEN4ZEEN 2 218 08-10-25, 02:20 PM
آخر رد: salamandal
Rainbow [كود] تصحيح الخطاء في الكود محمد مسافر 2 1,055 28-08-25, 09:13 AM
آخر رد: محمد مسافر
Rainbow [كود] تصحيح الخطاء في الكود محمد مسافر 0 848 27-08-25, 04:05 PM
آخر رد: محمد مسافر
  ما هو الخطأ فى هذا الكود خالد كامل1 10 1,197 28-05-25, 09:16 PM
آخر رد: خالد كامل1
  ارجو تعديل الكود بواستطة الاجراء المخزن new_programer 3 683 03-04-25, 02:44 PM
آخر رد: princelovelorn
  مساعدة في تحويل الكود من فيجوال بسيك 6 الى فيجوال دوت نت سيد أحمد 5 829 23-03-25, 10:54 PM
آخر رد: سيد أحمد
  ارجو تعديل الكود جلب البيانات عن طريق اجراء مخزن - مرفق مثال new_programer 0 626 05-02-25, 01:51 AM
آخر رد: new_programer
  ارجو تقيم الكود المرفق - جلب اعلي رقم لتسلسل نصي للباركود new_programer 4 615 30-01-25, 08:26 AM
آخر رد: new_programer
  هذا الكود لا يعمل بشكل صحيح لماذا ؟ PeterGhattas082460 3 453 21-12-24, 02:55 PM
آخر رد: aljzazy

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم