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

أداة الprogress bar مع حدث معين+ سؤال؟؟

مغلق
بدأه i1982 في 3 نوفمبر 2006 · 4 رد · 556 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

إخواني الأعزاء كيف من الممكن اجعل أداة الــــ progress bar بحيث تتناسب مع حدث معين مثلا لو كان البرنامج يقوم بنسخ ملف كبير الحجم أريد ان تظهر أداة الــــ progress bar حيث توضح تقدم عملية النسخ والى أين وصلت عملية النسخ. على اعتبار ان الهدف والمصدر تم تحديده في الكود

وهل يمكن أن أضعLabel يوضح الوقت المتبقي لإتمام العملية.

-----

كيف أستطيع تشغيل ملف من نوع Reg من خلال الضغط على زر command مع العلم أن الأمر shell لم ينجح معي؟

وشكرا لكم...

#2

180.gif

بالنسبة لشق الأول من السؤال :

تستطيع عمل ذلك بأسناد حجم البيانات أو عدد سجلاتها إلى الاداة بهذه الطريقة

ProgressBar1.Max = rs.Recorcont

أو هكذا اذا كنت تعرف العدد

ProgressBar1.Max = 100

ثم تعمل عدد لكي يظهر لك في الشريط كما يلي

ProgressBar1.Value = ProgressBar1.Value + 1

تم تعديل هذه المشاركة بواسطة HnHn في 4 نوفمبر 2006 في 02:48

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#3

اخي العزيز اذا ممكن ان ترفق لي مثال لتوضيح ما سالت عنه في المشاركه الاولى؟ والف شكر لك على التفاعل...

#4

في انتظار المثال وشكرا

#5

منسوخ من الـ API Guide

'in a form (Form1)
Private Sub Form_Load()
	'KPD-Team 2001
	'URL: http://www.allapi.net/
	'E-Mail: KPDTeam@Allapi.net
	Dim Ret As Long
	'set the graphics mode to persistent
	Me.AutoRedraw = True
	'print some text
	Me.Print "Click the form to abort the filecopy"
	'show the form
	Me.Show
	'start copying
	Ret = CopyFileEx("c:\verybigfile.ext", "c:\copy.ext", AddressOf CopyProgressRoutine, ByVal 0&, bCancel, COPY_FILE_RESTARTABLE)
	'show some text
	Me.Print "Filecopy completed " + IIf(Ret = 0, "(ERROR/ABORTED)", "successfully")
End Sub
Private Sub Form_Click()
	'cancel filecopy
	bCancel = 1
End Sub
'in a module
Public Const PROGRESS_CANCEL = 1
Public Const PROGRESS_CONTINUE = 0
Public Const PROGRESS_QUIET = 3
Public Const PROGRESS_STOP = 2
Public Const COPY_FILE_FAIL_IF_EXISTS = &H1
Public Const COPY_FILE_RESTARTABLE = &H2
Public Declare Function CopyFileEx Lib "kernel32.dll" Alias "CopyFileExA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal lpProgressRoutine As Long, lpData As Any, ByRef pbCancel As Long, ByVal dwCopyFlags As Long) As Long
Public bCancel As Long
Public Function CopyProgressRoutine(ByVal TotalFileSize As Currency, ByVal TotalBytesTransferred As Currency, ByVal StreamSize As Currency, ByVal StreamBytesTransferred As Currency, ByVal dwStreamNumber As Long, ByVal dwCallbackReason As Long, ByVal hSourceFile As Long, ByVal hDestinationFile As Long, ByVal lpData As Long) As Long
	'adjust the caption
	Form1.Caption = CStr(Int((TotalBytesTransferred * 10000) / (TotalFileSize * 10000) * 100)) + "% complete..."
	'allow user input
	DoEvents
	'continue filecopy
	CopyProgressRoutine = PROGRESS_CONTINUE
End Function

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

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