@LucaMs lo so in effetti tutti i pane B4XView hanno il loro canvas, ma mi chiedevo (motivo del post) perché esiste la funzione .SetImage sui nuovi object B4XView? come si Usa?
La sub imageblobget è corretta perche trasferisce i byte nell'immagine con InputStream non direttamente con SetBitmap. L'array va passato a immagine e poi a SetBitmap.@LucaMs, lo so ma quel codice che ho postato da risultati con la trasformazione da db a imageview
B4X:Sub imageblobget(value As Object) As Image Try Dim Buffer() As Byte Buffer = value Dim InputStream1 As InputStream InputStream1.InitializeFromBytesArray(Buffer, 0, Buffer.Length) Dim Bitmap1 As Image Bitmap1.Initialize2(InputStream1) InputStream1.Close Return Bitmap1 Catch Log(LastException) End Try End Sub
Chiuedo un consiglio perche non mi è chiara la cosa in zucca, dovrebbe essere molto più semplice ma in realtà la trovo un poco bordellain, al momento gira tutto alla perfezione ma avendo visto che in .SetBitmap in B4XView che in ImageView funziona perfettamente, qui mi mi fa crash, a questo punto ho fatto un codice per una cosa e un codice per l'altra, ma trovo la cosa una CAGATA che vorrei sistemare.
B4X:Dim imgw As ImageView imgw.Initialize("") imgw.SetImage(imvalue.Get(14)) imgw.PrefHeight = 24 imgw.PrefWidth = 24 SetGraphic(bt, imgw)
qui invece devo aggiungere imageview su un pannello cosa che vorrei fare nel pannello senza imageview
B4X:If v Is B4XView And v.Tag = "icona" Then Dim pn As Pane = v If lsTemp.Get(14) <> Null Then Try Log(lsTemp.Get(14)) Dim imgw As ImageView imgw.Initialize("") imgw.SetImage(lsTemp.Get(14)) imgw.PrefHeight = 128 imgw.PrefWidth = 128 pn.AddNode(imgw,0,0,128,128) '------------------------------------------ Catch Log(LastException) End Try End If End If
Ora che @Star-Dust ha sollevato il "NO NON VA BENE" voglio capire
Si, capisco. Un modo per non rinco...irsi è usare dei prefissi adatti.@LucaMs , quindi
imageview.SetImage(lsTemp.Get(14)) èperfetto
b4xView.SetImage(lsTemp.Get(14)) non può esistere (crash)
trovo questo ingannevole non credi
Non hai ancora capito che Ivano è strano? Scherzando, si potrebbe dire che è... borderline ?Perché trovi strano che tu dica che sia sbagliato.
si lascia stare i prefissi che li ho messi per dividere le situazioni, ciò che dico e che i nuovi b4xview non li vedo ancora in modo chiaro, hanno un botto di proprietà perchè possono prendere in carico tanti oggetti nativi ma poi quando scrivi il codice e ti trovi .text in un pane evidente che non avrà successo quel txtSi, capisco. Un modo per non rinco...irsi è usare dei prefissi adatti.
Ad esempio, se hai un Pane "contenuto" in una B4XView, potresti chiamarlo xpnArticolo, ad esempio, in cui x ti ricorda che è una B4XView, pn che è un Pane.
Per questo se usi un prefisso adatto ti ricorda che quella B4XView non è una TextField o TextArea etc.si lascia stare i prefissi che li ho messi per dividere le situazioni, ciò che dico e che i nuovi b4xview non li vedo ancora in modo chiaro, hanno un botto di proprietà perchè possono prendere in carico tanti oggetti nativi ma poi quando scrivi il codice e ti trovi .text in un pane evidente che non avrà successo quel txt
Perché non "ti ascolta"? Ormai ci sono abituato ? (e in effetti anch'io per un po' non ho proprio risposto... fino a poco fa, esattamente).Comunque non interverro più.
@LucaMs lo uso, ma la domanda rimane... sei obligato a volte ritrasformare l'oggetto per riprendere delle proprietà dell'oggetto nativo, comunquesia il pane da designer gli puoi dare un immagine o un colore, cosa che potresti fare anche da codice, ma al momento che io sappia (IO) non è così banale come il designerPer questo se usi un prefisso adatto ti ricorda che quella B4XView non è una TextField o TextArea etc.
E per questo è utilissimo l'help contestuale.
Non solo per questo, ma anche perché sono 3 settimane che lotto con altri per fargli capire delle cose informatiche senza riuscirci... e ho fatto il pieno ? ? ? ?Perché non "ti ascolta"? Ormai ci sono abituato ? (e in effetti anch'io per un po' non ho proprio risposto... fino a poco fa, esattamente).
Nel Designer c'è il trucco: il Pane... non è solo un Pane - non ricordo se ci sia sopra una ImageView o un Canvas, ma è una cosa gestita appunto dal Designer.@LucaMs lo uso, ma la domanda rimane... sei obligato a volte ritrasformare l'oggetto per riprendere delle proprietà dell'oggetto nativo, comunquesia il pane da designer gli puoi dare un immagine o un colore, cosa che potresti fare anche da codice, ma al momento che io sappia (IO) non è così banale come il designer
In effetti lo stomaco brontola.Buona cena a tutti
Purtroppo non era una battuta, è davvero così.Nel Designer c'è il trucco: il Pane... non è solo un Pane - non ricordo se ci sia sopra una ImageView o un Canvas, ma è una cosa gestita appunto dal Designer.
uhm... e invece non lo fa, "risponde" in entrambi i casi zero. Eppure...Purtroppo non era una battuta, è davvero così.
Se crei un Pane da Designer e poi da codice gli "chiedi" quanti "figli" abbia, vedrai che non ti "risponderà" zero, ma 1, mentre se lo crei da codice non sarà così.
si non è un problema tanto l'immagine la metti aggiungendo la imageview o il canvasBeh, non trovo il post in cui Erel lo disse ma è così, è il motivo per cui da codice non puoi impostare un'immagine in un Pane e da Designer sì.