C'è un altro modo per spiegare la cosa, prima inizi a fumarmi il cervello? ?Ciao a tutti, c'è un modo per sapere se sto eseguendo un codice contenuto in una sub da un'altra sub che visualizza un panel semitrasparente o bottoni bloccati mentre eseguo il codice nella prima sub?
grazie
Vediamo...C'è un altro modo per spiegare la cosa, prima inizi a fumarmi il cervello? ?
Public Sub Show As ResumableSub
Panel1.Visible = True
Wait For EscuzioneCompletata
Panel1.Visible = False
Return True
End Sub
Sub XXX
Show
' qui prosegue le proprie operazioni
' ...
CallSubDelayed(ME, "EscuzioneCompletata") ' ME se la Show stesse nella stessa Activity o classe di questa XXX
End Sub
L'idea è giusta l'implementazione è invertita
Comunque si può usare il wait for (ResumableSub) complete(Success as Boolean)
L'idea è giusta l'implementazione è invertita
#Region Shared Files
#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True
#End Region
'Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=Project.zip
Sub Class_Globals
Private Root As B4XView
Private xui As XUI
Private Pane1 As B4XView
Private lblXXXValue As B4XView
Private lblYYYValue As B4XView
End Sub
Public Sub Initialize
' B4XPages.GetManager.LogEvents = True
End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
Root = Root1
Root.LoadLayout("MainPage")
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Private Sub Button1_Click
XXX
Sleep(2000) ' Serve solo a vedere l'effetto del pannello che scompare.
yyy
End Sub
Public Sub Show
Log("Show")
Pane1.Visible = True
Wait For EscuzioneCompletata
Log("completata")
Pane1.Visible = False
End Sub
Private Sub XXX
Show
For i = 1 To 5
lblXXXValue.Text = i
Log("xxx " & i)
Sleep(200)
Next
CallSubDelayed(Me, "EscuzioneCompletata")
End Sub
Private Sub yyy
Show
For i = 1 To 10
lblYYYValue.Text = i
Log("yyy " & i)
Sleep(200)
Next
CallSubDelayed(Me, "EscuzioneCompletata")
End Sub
Ok quindi anche se la sub EscuzioneCompletata" non esiste funziona ugualmente... EscuzioneCompletata" serve solo a sbloccare wait for...... Giusto?L'idea era giusta, l'implementazione... pure.
(C'era solo un superluo As ResumableSub, che comunque sarebbe stato ininfluente)
B4X:#Region Shared Files #CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files" 'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True #End Region 'Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=Project.zip Sub Class_Globals Private Root As B4XView Private xui As XUI Private Pane1 As B4XView Private lblXXXValue As B4XView Private lblYYYValue As B4XView End Sub Public Sub Initialize ' B4XPages.GetManager.LogEvents = True End Sub 'This event will be called once, before the page becomes visible. Private Sub B4XPage_Created (Root1 As B4XView) Root = Root1 Root.LoadLayout("MainPage") End Sub 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. Private Sub Button1_Click XXX Sleep(2000) ' Serve solo a vedere l'effetto del pannello che scompare. yyy End Sub Public Sub Show Log("Show") Pane1.Visible = True Wait For EscuzioneCompletata Log("completata") Pane1.Visible = False End Sub Private Sub XXX Show For i = 1 To 5 lblXXXValue.Text = i Log("xxx " & i) Sleep(200) Next CallSubDelayed(Me, "EscuzioneCompletata") End Sub Private Sub yyy Show For i = 1 To 10 lblYYYValue.Text = i Log("yyy " & i) Sleep(200) Next CallSubDelayed(Me, "EscuzioneCompletata") End Sub
Yessa.Ok quindi anche se la sub EscuzioneCompletata" non esiste funziona ugualmente... EscuzioneCompletata" serve solo a sbloccare wait for...... Giusto?
Ok ok grazie milleYessa.
Prego, bastano 500 (€) ?Ok ok grazie mille
???Prego, bastano 500 (€) ?
Vanno bene anche i Like: me li vendo al mercato nero, a 1€ l'uno ?Prego, bastano 500 (€) ?