Realizzare la Progress Bar Notes in LS

TIPS DEVELOPERS

  • 2 commenti
Se il tuo Client gira sotto Windows è possibile visualizzare la Progress Bar Notesiana, durante le operazioni che impiegano un lungo lasso di tempo.
Esistono 2 tipi di ProgressBar, una larga che viene utilizzata per esempio durante la copia dei documenti e l'altra che appare in basso allo schermo che viene utilizzata quando per esempiov engono aperti dei documenti con una connessione DIAL-UP.
Qui sotto riporto un esempio dell'utilizzo della prima ProgressBar grafica:
*******************************************
Const NPB_TWOLINE% = 1
Declare Function NEMProgressBegin Lib "nnotesws.dll" ( Byval wFlags As Integer ) As Long
Declare Sub NEMProgressEnd Lib "nnotesws.dll" ( Byval hwnd As Long )
Declare Sub NEMProgressSetBarPos Lib "nnotesws.dll" ( Byval hwnd As Long, Byval dwPos As Long)
Declare Sub NEMProgressSetBarRange Lib "nnotesws.dll" ( Byval hwnd As Long, Byval dwMax As Long )
Declare Sub NEMProgressSetText Lib "nnotesws.dll" ( Byval hwnd As Long, Byval pcszLine1 As String, Byval pcszLine2 As String )

Sub Initialize
   Dim hwnd As Long
   Dim i As Long
   Dim j As Long
   hwnd = NEMProgressBegin( NPB_TWOLINE )
   ' Set the bar range - the default is 100
   NEMProgressSetBarRange hwnd, 200
   ' Display text on the dialog.
   NemProgressSetText hwnd, "Calculating ...", "Start"
   For i = 0 To 200
      For j = 0 To 9000
         ' artificial delay for the example !!
      Next j
      ' Update the bar position
      NEMProgressSetBarPos hwnd, i
      ' Update the text at twenty five percent
      If i = 50 Then
         NEMProgressSetText hwnd, "Calculating ....", "25%"
      End If
      ' Update the text at fifty percent
      If i = 100 Then
         NEMProgressSetText hwnd, "Calculating .....", "50 %"
      End If
      ' Update the text at seventy five percent
      If i = 150 Then
         NEMProgressSetText hwnd, "Calculating ......", "75 %"
      End If
   Next
   ' Destroy the dialog when we're done
   NEMProgressEnd hwnd
End Sub
*******************************************

Provate a metterla in un agente e vedrete cosa appare...

2 Commenti:

  • #1 Daniele 07/08/2005 11:01:12 AM

    io di solito la utilizzo all'interno di un ciclo dove vi è una variabile di supporto che si auto-incrementa...dubbi?

  • #2 tommaso 07/07/2005 10:35:16 AM

    devo copiare dei file con lotus, ho la rpocedura che importa i file e volevo abbellirla inserendo una progress bar.

    Come faccio a calcolare la durata dellla progress bar dal momento che l'import ha durata variabile da 30 secondi ai 5 minuti.

    C'e una funzione per vedre la dimensioni dei file così posso calcolarla approssimativamente in base alla loro dimensione oppure in base al loro numero contandoli?

Commenta articolo
 

Questo spazio web è stato creato da per un uso pubblico e gratuito. Qualsiasi tipo di collaborazione sarà ben accetta.
Per maggiori informazioni, scrivete a info@dominopoint.it

About Dominopoint
Social
Dominopoint social presence: