نمایش نتایج 1 تا 11 از 11

نام تاپیک: راهنمایی در مورد زمان پردازش

  1. #1

    راهنمایی در مورد زمان پردازش

    سلام

    اگر کسی از دوستان نظری دارند ممنون میشم مطرح کنن

    یه richtextbox داریم که باید یه text حجیم رو توش load کنیم (10mb )

    حالا در حالی که load میشه برنامه مثل هنگ کردن متوقف میشه تا richtextbox آماده شه

    آیا میشه در این مدت زمان یه progress bar گذاشته بشه و تا زمان بارگذاری کامل متن این

    progress bar به آخر برسه؟


    ممنون

  2. #2
    کاربر دائمی
    تاریخ عضویت
    بهمن 1382
    محل زندگی
    فعلا ایران - فعلا تهران
    پست
    2,628
    اگر این richtextbox یک Event که نشون دهنده میزان لود شدن نداشته باشه میتونی از یک progress bar مثل اول ویندوز استفاده کنی تا زمانی که لود کامل نشده اسکرول کنه

  3. #3
    کاربر دائمی
    تاریخ عضویت
    آذر 1383
    محل زندگی
    تهران
    پست
    1,021

    Lightbulb

    نقل قول نوشته شده توسط بابک زواری
    اگر این richtextbox یک Event که نشون دهنده میزان لود شدن نداشته باشه میتونی از یک progress bar مثل اول ویندوز استفاده کنی تا زمانی که لود کامل نشده اسکرول کنه
    سلام

    عزیز جان یک کار دیگه هم میشه کرد.
    میتونی متن رو تکه تکه کنی و یک Tread بنویسی و در Treadکه تکه هارو به Rich اضافه کنی یادتم نره دکمه ای قرار بده که کاربر بتونه این کارو کنسل کنه. در این صورت اگه وسط Tread کاربر کنسل کرد مقداری از متن درون Rich قرار گرفته شده باشه.
    در ضمن برای نشون دادن پیشرفت کار حتما از Progress Bar استفاده کن.

    در پناه حق موفق باشید و پرتوان

  4. #4
    ممنون از کمکتون

    اما این راه ها که پیشنهاد کردید رو بنده تا حالا کار نکردم

    اگر ممکنه راهنمایی یا مثال رو لطف کنید

    ممنون

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آذر 1383
    محل زندگی
    تهران
    پست
    1,021

    Lightbulb

    نقل قول نوشته شده توسط sarmad
    ممنون از کمکتون

    اما این راه ها که پیشنهاد کردید رو بنده تا حالا کار نکردم

    اگر ممکنه راهنمایی یا مثال رو لطف کنید

    ممنون
    عزیز جان حتما مگه باید کار کرده باشی؟
    کمی برو در MSDN و همین بخش جستجو کن. مطمئنا به نتایج خوبی خواهی رسید.
    اگه هم به مشکل برخوردی تاپیک بزن، هر کی از دوستان بتونه بهت کمک میکنه.

    در پناه حق موفق باشید و پرتوان

  6. #6
    سلام،
    اگه از VB 8 استفاده می‌کنید این کار رو هم می‌تونید بکنید:
    یک Textbox به نام TextBox1
    یک Button به نام BtnLoad
    یک ProgressBar به نام ProgressBar1
    را روی صفحه بچینید.
    و یک BackGroundWorker را روی صفحه درگ کنید.
    و از این کدها استفاده کنید:

    Dim str As String = ""
    Private Sub btnLoad_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLoad.Click
    btnLoad.Enabled = False
    Dim count As Int32 = Int32.MaxValue
    TextBox1.MaxLength = count
    TextBox1.Multiline = True
    TextBox1.ReadOnly = True
    TextBox1.Text = "Loading..."
    BackgroundWorker1.WorkerReportsProgress = True
    BackgroundWorker1.RunWorkerAsync(TextBox1.Text)

    End Sub

    Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
    For i As Int32 = 0 To 10000
    BackgroundWorker1.ReportProgress(i \ 100)
    str &= "*"
    Next
    End Sub
    Private Sub BackgroundWorker1_ProgressChanged(ByVal sender As Object, ByVal e As System.ComponentModel.ProgressChangedEventArgs) Handles BackgroundWorker1.ProgressChanged
    ProgressBar1.Value = e.ProgressPercentage
    End Sub

    Private Sub BackgroundWorker1_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted
    TextBox1.Text = str
    TextBox1.ReadOnly = False
    MsgBox("Compelete!")
    End Sub


    البته این خط هم مقدار نسبتاً زیادی زمان لازم دارد:
    TextBox1.Text = str
    اگر راهی پیدا کردید به ما هم بگوئید!

  7. #7
    کاربر دائمی
    تاریخ عضویت
    بهمن 1382
    محل زندگی
    فعلا ایران - فعلا تهران
    پست
    2,628
    مشکل اینه هست که نمیشه تشخیص داد چه مقدار از RichText لود شده که به نسبت اون ProgressBar رو مقدار دهی کرد

  8. #8
    به شرط اینکه RichTextBox1.MaxLength دقیقاً به اندازه متن باشه:
    If RichTextBox1.MaxLength <> 0 Then MsgBox((RichTextBox1.Text.Length / RichTextBox1.MaxLength) * 100)

    منظورتون اینه یا چیز دیگری؟
    ببخشید اگه درست متوجه نشدم.

  9. #9
    کاربر دائمی
    تاریخ عضویت
    آذر 1383
    محل زندگی
    تهران
    پست
    1,021

    Lightbulb

    نقل قول نوشته شده توسط بابک زواری
    مشکل اینه هست که نمیشه تشخیص داد چه مقدار از RichText لود شده که به نسبت اون ProgressBar رو مقدار دهی کرد
    سلام

    وقتی که تکه تکه میکنیم، تعداد کل تکه هارو مگه نداریم؟

    در پناه حق موفق باشید و پرتوان

  10. #10
    اینم من پیدا کردم که کار باbackgroundworker رو توضیح می ده

    http://www.danielmoth.com/Blog/2004/...er-sample.html

  11. #11
    کاربر دائمی آواتار Sub Zero
    تاریخ عضویت
    اردیبهشت 1385
    محل زندگی
    اهواز
    پست
    443
    یه سری به لینک زیر بزنید اگه چیزیی متوجه شدید به ما هم بگید .
    http://www.xtremevbtalk.com/archive/.../t-232533.html

تاپیک های مشابه

  1. تقاضایی راهنمایی و کمک در کار با Dreamweaver
    نوشته شده توسط احمد کاوه در بخش طراحی وب (Web Design)
    پاسخ: 4
    آخرین پست: پنج شنبه 29 مهر 1389, 12:41 عصر
  2. آقا چه چیزایی با javascript قابل حل هست چه چیزایی با .net
    نوشته شده توسط odiseh در بخش ASP.NET Web Forms
    پاسخ: 13
    آخرین پست: جمعه 02 فروردین 1387, 04:44 صبح
  3. دوستانی که با interbase آشنایی دارند لطفا راهنمایی کنند
    نوشته شده توسط mehdi_moosavi در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 4
    آخرین پست: شنبه 01 بهمن 1384, 14:11 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •