Italian RESIZE DI UN PANEL "CON LE DITA"

Matteo Granatiero

Active Member
Licensed User
Ho bisogno di ridimensionare un panel attraverso le gestures, perciò non un ritaglio o solo effetto zoom ma un ridimensionamento verticale o orizzontale. Mi spiego meglio, vorrei oltre che al semplice zoom dall'angolo con libreria PichZoomandMove (in cui aumenta o diminuisce in maniera proporzionale altezza e larghezza) vorrei ridimensionare anche solo altezza o solo larghezza. Ho cercato un po ma oltre al semplice Drag o effetto Zoom non ho trovato nulla.
Aiuti please
 

Star-Dust

Expert
Licensed User
Longtime User
Vedi qui


 

Matteo Granatiero

Active Member
Licensed User
Vedi qui


Ciao grazie per l’attenzione e la disponibilità, ma purtroppo non ho notato niente che possa aiutarmi in questi tuoi link. Premetto che sono un principiante perciò non offendo la tua esperienza ;)
 

LucaMs

Expert
Licensed User
Longtime User
Premetto che sono un principiante
Penso che Totò direbbe:
"E come è possibile? Un pezzo di Granatiero così come può essere un principiante?" 😄

A naso mi viene da sospettare che tu debba gestire l'evento Touch del panel, rilevando se e quale lato si stia toccando e se la fase sia di selezione del lato (pressione continua per N millisecondi + flag di stato) o di trascinamento.

Tutto da codice e con variabili a livello di modulo.
 
Last edited:

Star-Dust

Expert
Licensed User
Longtime User
Ciao grazie per l’attenzione e la disponibilità, ma purtroppo non ho notato niente che possa aiutarmi in questi tuoi link. Premetto che sono un principiante perciò non offendo la tua esperienza ;)
Nel primo link ci sono viste (incluso il panel) che si possono ridimensionare e spostare con le dita. Potrebbe essere quello che cerchi


Nel secondo ci sono delle finestre ridimensionabili in B4J.
 
Last edited:

Matteo Granatiero

Active Member
Licensed User
Nel primo link ci sono viste (incluso il panel) che si possono ridimensionare e spostare con le dita. Potrebbe essere quello che cerchi


Nel secondo ci sono delle finestre ridimensionabili in B4J.
Ho appena trovato (forse) la soluzione, ma testandola (male evidentemente) mi da errore.
B4X:
Sub B4XPanel1_Touch(Action As Int, Coordinate() As Tp_Coordinate, Resizable As Boolean)
    B4XPanel1.Resizable=True
End Sub

errore.png
 

Star-Dust

Expert
Licensed User
Longtime User
Ho appena trovato (forse) la soluzione, ma testandola (male evidentemente) mi da errore.
B4X:
Sub B4XPanel1_Touch(Action As Int, Coordinate() As Tp_Coordinate, Resizable As Boolean)
    B4XPanel1.Resizable=True
End Sub

View attachment 103203
In effetti non si usa così. Vuoi un esempio?
 

Star-Dust

Expert
Licensed User
Longtime User

Star-Dust

Expert
Licensed User
Longtime User
Ti ho allegato un esempio. Devi riscaricare la liberia versione B4A che aveva un bugs.
Per muovere un pannello toccare e trascinare l'angolo in alto a sinistra. Per ridimensionare un pannello toccare e trascinare l'angolo in basso a destra

ezgif.com-crop.gif
 

Attachments

  • PanelMobile.zip
    10.2 KB · Views: 137

LucaMs

Expert
Licensed User
Longtime User

Matteo Granatiero

Active Member
Licensed User
è perfetto
Ti ho allegato un esempio. Devi riscaricare la liberia versione B4A che aveva un bugs.
Per muovere un pannello toccare e trascinare l'angolo in alto a sinistra. Per ridimensionare un pannello toccare e trascinare l'angolo in basso a destra

View attachment 103220

è perfetto, sarà sicuramente utile a molta gente. Per caso è possibile espandere la funzione del drag (trascinamento) in qualsiasi punto del panel ?
 

Star-Dust

Expert
Licensed User
Longtime User
è perfetto


è perfetto, sarà sicuramente utile a molta gente. Per caso è possibile espandere la funzione del drag (trascinamento) in qualsiasi punto del panel ?
Si, ma devo fare un aggiornamento alla libreria
 

Matteo Granatiero

Active Member
Licensed User
Non ho capito
[/QUOTE

se inserisco la funzione SetBitmap, la libreria mi impone in automatico il Bitmap con Gravity "Center" al Panel anche se da Designer il Gravity è il FILL per esempio. Perciò non ho modo di personalizzare il Gravity del Bitmap. Infatti anche il suggerimento da codice dice che "sarà impostato con gravity CENTER) se uso SetBitmap
 
Top