Italian Errore a me inspiegabile)

Star-Dust

Expert
Licensed User
Longtime User
Bisogna avere il coraggio di tornare indietro e cambiare percorso se ti accorgi che la strada che percorri non ti porta nella direzione giusta...... Bella questa me la scrivo :D:D:D :p:p:p
 

LucaMs

Expert
Licensed User
Longtime User
Sono andato a rileggere le altre novità della versione 7.

In effetti non ricordavo che fosse da questa versione ma questa novità è secondo me la più importante ed utile:
--- Variables and subs renaming based on the Find All References feature

Unica altra utile potrebbe essere questa:
--- Sender is set when raising events with CallSub or CallSubDelayed from classes
ma non sarebbe necessaria, perché è sufficiente passare Me come parametro alla routine chiamata dalla classe.
 
D

Deleted member 103

Guest
Bisogna avere il coraggio di tornare indietro e cambiare percorso se ti accorgi che la strada che percorri non ti porta nella direzione giusta...... Bella questa me la scrivo :D:D:D :p:p:p
Giusto, però se devo andare da Firenza a Roma mica torno a Firenze, aggiro l'ostacolo a procedo per Roma (bella anche questa). ;)
 

LucaMs

Expert
Licensed User
Longtime User
per esempio "Wait For", mi ha risolto un paio di problemi.
Ok (anche se mi piacerebbe sapere quali) ma il mio "Quali?" era riferito alla tua affermazione su ALTRE nuove funzionalità, oltre a quelle relative alle routine riesumabili.
Comunque una davvero utile è il Refactoring, la possibilità di cambiare nome a variabili e routine.

Il Wait For, che ancora non ho avuto modo di usare (ovvero non ne ho sentita la necessità) penso che abbia il problema di non avere la possibilità di passargli un tempo limite d'attesa, un timeout.
 

LucaMs

Expert
Licensed User
Longtime User
Giusto, però se devo andare da Firenza a Roma mica torno a Firenze, aggiro l'ostacolo a procedo per Roma (bella anche questa). ;)
Beh, cercando di accostare il più possibile la metafora alle versioni di b4a... se sei quasi arrivato a Roma (B4A V. 7.01) e trovi una voragine, non torni a Firenze (B4A V.100) ma su qualche strada alternativa, qualche km indietro (B4A v. 6.80)
 
D

Deleted member 103

Guest
Il Wait For, che ancora non ho avuto modo di usare (ovvero non ne ho sentita la necessità) penso che abbia il problema di non avere la possibilità di passargli un tempo limite d'attesa, un timeout.

Questo è un esempio:
B4X:
Sub Activity_Resume
    'Log("Activity_Resume")

    If Not(mBBL.IsTablet) Then
        pnlBlackscreen.Visible = True

        Msgbox2Async("Diese App kann nur auf Tablets oder Smartphone ab 5 Zoll Display ausgeführt werden!", "Gerät nicht unterstützt", "OK", "", "", Null, False)
        Wait For Msgbox_Result(result As Int)
        Activity.Finish
    Else
        pnlBlackscreen.Visible = False
    End If
End Sub
 
D

Deleted member 103

Guest
Beh, cercando di accostare il più possibile la metafora alle versioni di b4a... se sei quasi arrivato a Roma (B4A V. 7.01) e trovi una voragine, non torni a Firenze (B4A V.100) ma su qualche strada "parallela" qualche km indietro (B4A v. 6.80)
Ma io voglio restare a Roma! :p
Firenze è troppo umida. :D
 

LucaMs

Expert
Licensed User
Longtime User
Io ad esempio ho una situazione simile: se per qualche motivo il server non è raggiungibile, mostro una dialog che informa l'utente e gli consiglia di attendere e riavviare l'app, dopodiché, dopo l'ok dell'utente, chiudo l'app.

Eppure non mi sono serviti msgbox2Acyng e Wait For.


P.S. Sono andato a verificare ed uso la normale MsgBox.
 
D

Deleted member 103

Guest
Per forza ti è stato utile il Wait For, perché hai utilizzato Msgbox2Async; fino ad oggi non è stato sufficiente usare una normale dialog???
Questo è stato necessario perchè voglio restare a Roma. :D
 

LucaMs

Expert
Licensed User
Longtime User
Sempre con riferimento all'esempio di @Filippo...

se non sbaglio non solo la Sleep restituisce il controllo alla routine chiamante ma anche la Wait For. Se fosse così, cosa succederebbe se esistessero queste due routine, la chiamante e quella in cui Filippo avverte che il dispositivo non è supportato e chiude l'Activity?


P.S. faccio subito una provola...
 

LucaMs

Expert
Licensed User
Longtime User
Sempre con riferimento all'esempio di @Filippo...

se non sbaglio non solo la Sleep restituisce il controllo alla routine chiamante ma anche la Wait For. Se fosse così, cosa succederebbe se esistessero queste due routine, la chiamante e quella in cui Filippo avverte che il dispositivo non è supportato e chiude l'Activity?


P.S. faccio subito una provola...

Confermato, anche la Wait For restituisce il controllo alla routine chiamante, il che può provocare seri mal di testa quanto la Sleep.

Scrivo qui le due uniche routine del progetto (più la Resume che chiama la prima routine):

B4X:
Sub Activity_Resume
   RoutineChiamante
End Sub

Sub RoutineChiamante
LogColor("RoutineChiamante - Prima della chiamata alla msgbox", Colors.Blue)
    DisposivitoNonSupportato
LogColor("RoutineChiamante - Eseguo dopo la chiamata alla msgbox", Colors.Blue)
End Sub

Sub DisposivitoNonSupportato
    Msgbox2Async("Diese App kann nur auf Tablets oder Smartphone ab 5 Zoll Display ausgeführt werden!", "Gerät nicht unterstützt", "OK", "", "", Null, False)
    Wait For Msgbox_Result(result As Int)
    Activity.Finish
End Sub

Ebbene il secondo log viene eseguito MENTRE è visualizzata la msgbox; immaginate se anziché un semplice log quella routine svolgesse quache lavoro non consentito se non dopo l'approvazione dell'utente tramite la msgbox!
 
D

Deleted member 103

Guest
immaginate se anziché un semplice log quella routine svolgesse quache lavoro non consentito se non dopo l'approvazione dell'utente tramite la msgbox!
ca..o sarebbe un casino! :(
 

Star-Dust

Expert
Licensed User
Longtime User
... ma a quanto pare hai sbagliato supposta
Non necessariamente, perché compilando con 6.80 doveva togliere Sleep(0) e riportare DoEvents, quindi avrebbe risolto ;);)
 

Star-Dust

Expert
Licensed User
Longtime User
non so se si era capito, ma la mia era una battuta sulla "supposta" :p
Si certo ;) Approfittavo di parlare male del 7.01 visto che Erel non legge il forum italiano :confused::confused::confused: spero :eek::eek::eek:
 
Last edited:
Top