View: 2492|Reply: 9
|
VB6 expert...ur help needed
[Copy link]
|
|
camne eh nk buat progress bar yg loading ikut progress procedure yg kite run?
saye execute procs (oracle) from front end thru a button click, then nk suruh
progress bar tu tunjuk progress execution tu. sbb kalau p.bar tu x gerak, nnt
user ingat hang plak.
ada idea tak? |
|
|
|
|
|
|
|
ambik progress bar component.then buat function utk p.bar ni...then dekat command button tu...call lah function p bar nih...
selamat mencuba
Function ProgressBar()
Dim Counter As Integer
Dim Workarea(7500) As String
ProgressBar1.Min = LBound(Workarea)
ProgressBar1.Max = UBound(Workarea)
ProgressBar1.Visible = True
'Set the Progress's Value to Min.
ProgressBar1.Value = ProgressBar1.Min
'Loop through the array.
For Counter = LBound(Workarea) To UBound(Workarea)
'Set initial values for each item in the array.
Workarea(Counter) = "Initial value" & Counter
ProgressBar1.Value = Counter
Next Counter
ProgressBar1.Visible = False
ProgressBar1.Value = ProgressBar1.Min
End Function |
Rate
-
1
View Rating Log
-
|
|
|
|
|
|
|
makasih hasmal sbb sudi reply..
o...pakai array eh? camne nk relatekan dgn procedure saye tu yek? |
|
|
|
|
|
|
|
Reply #3 chiaki's post
maksud awak nak relatekan progress bar dengan procedure ..
-> bila panggil stored procedure progress bar itu akan tunjukkan sesuatu sedang berlaku dalam procedure itu ke?
-> untuk tunjukkan semua progress from clicking the button sampai dia finished?
kalau untuk tunjukan stored procedure sahaja rasanya macam tak boleh je pasal bile kite panggil stored procedure
program kita akan sangkut kat bahagian panggilan itu dan tunggu sehingga stored procedure itu habis
iaitu bila control dapat semula kepada app kita.
Jadi kalau ader progress bar pun nanti dia tetap tidak akan berjalan sehinggalah stored procedure itu habis...
mungkin boleh kalau pakai timer... |
|
|
|
|
|
|
|
ye betul tu stingbeh...itu la masalahnye.
sbb stored procedure yg nk diexecute tu mmg takes time.
so kalau kite x tunjuk ape2 kt front end,contohnye mcm progress bar tu,
nnt user ingat apps kite hanged. padahal dia tgh process kt db.
ape yek cara lain yg leh mengconvincekan user bahawasanya apps tu
tak hanged sebenonye. |
|
|
|
|
|
|
|
Reply #5 chiaki's post
There's one way...
Create one table in sql utk store status/proress..
Masa tgh execute stored procedure tu....for each progress...masukkan the status/progress dlm table tu ...example:
1 - Sedang diproses bhg 1...
2 - Sedang diproses bhg 2...
So, dlm VB code tu...just pull out the status/progress dm sql table tu.. so the user tau stored procedure tu tgh buat apa sekarang... |
|
|
|
|
|
|
|
pakai timer
timer ini akan enable sebelum panggil stored procedure
timer nie pulak keje dia adalah mengupdatekan progress bar..
bile progress bar penuh dia akan reset balik dan buat balik progress tue..
so bile stored procedure dah selesaikan keje dia
dan control dapat balik kat application then terus jer la offfkan timer tue.
cara lain letak doevents
doevents akan memberi control kepada processor dan dia akan buat keje2 yg lain dalam
sementara tunggu stored procedure habis. kalau letak sebelum panggil stored procedure tak jadi
cube letak buat timer dan letak dalam timer. walaupun application nie tgh processing still masih lagi
boleh tarik2 dia, move2 dia,
cara lain seperti yg dicadangkan choroque, letak msg dalam satu table
then pakai timer untuk baca msg dalam table tue |
|
|
|
|
|
|
|
process tu utk save/retrieve data ke? |
|
|
|
|
|
|
|
procedure tu ada insert, update, select....delete pun ada gak. pastu ada gak yg nested procs. |
|
|
|
|
|
|
| |
|