Differenze tra le versioni di "Ottenere il percorso di un file trasportato e rilasciato con Drag&Drop"
(Creata pagina con "Per ottenere il percorso, comprensivo del nome di un file, trascinato con la risorsa del ''Drag&Drop'' all'interno di un Controllo di testo, utilizza il Metodo ".Paste()" dell...") |
|||
Riga 1: | Riga 1: | ||
Per ottenere il percorso, comprensivo del nome di un file, trascinato con la risorsa del ''Drag&Drop'' all'interno di un Controllo di testo, utilizza il Metodo ".Paste()" della Classe ''Drag''. | Per ottenere il percorso, comprensivo del nome di un file, trascinato con la risorsa del ''Drag&Drop'' all'interno di un Controllo di testo, utilizza il Metodo ".Paste()" della Classe ''Drag''. | ||
<BR>Sarà opportuno lasciare vuoto il parametro previsto dal Metodo ".Paste()", giacché, se usassimo il formato "text/uri-list", eventuali file aventi nel nome caratteri particolari - come ad esempio il simbolo "+" o il simbolo "§" - questi sarebbero sostituiti nel risultato da uno spazio bianco. | <BR>Sarà opportuno lasciare vuoto il parametro previsto dal Metodo ".Paste()", giacché, se usassimo il formato "text/uri-list", eventuali file aventi nel nome caratteri particolari - come ad esempio il simbolo "+" o il simbolo "§" - questi sarebbero sostituiti nel risultato da uno spazio bianco. | ||
− | <BR>Lasciando invece vuoto quel parametro, i simboli saranno salvaguardati, anche se, però, qualora il nome del file dovesse contenere uno spazio bianco, questo sarebbe riportato con il codice "%20" (sappiamo che il valore esadecimale &H20 corrisponde appunto nella tabella ASCII al carattere dello Spazio Bianco). | + | <BR>Lasciando invece vuoto quel parametro, i simboli saranno salvaguardati, anche se, però, qualora il nome del file dovesse contenere uno spazio bianco, questo sarebbe riportato con il codice "%20" (sappiamo che il valore esadecimale &H20 corrisponde appunto nella tabella ASCII al carattere dello Spazio Bianco). Per ovviare a ciò useremo la funzione "Replace()". |
<BR>Va sottolineato che la stringa del percorso, dopo il nome del file, prevede il carattere del "Nuova linea a capo" (&H10, gb.Newline) e del "Ritorno a capo" (&H0D, gb.Cr), seguito da alcuni valori numerici in ASCII. | <BR>Va sottolineato che la stringa del percorso, dopo il nome del file, prevede il carattere del "Nuova linea a capo" (&H10, gb.Newline) e del "Ritorno a capo" (&H0D, gb.Cr), seguito da alcuni valori numerici in ASCII. | ||
Per eliminare il valore del &H0D, il codice prevederà l'uso della funzione [https://www.gambas-it.org/wiki/index.php/Scan Scan()]. | Per eliminare il valore del &H0D, il codice prevederà l'uso della funzione [https://www.gambas-it.org/wiki/index.php/Scan Scan()]. | ||
Riga 15: | Riga 15: | ||
Public Sub Listbox1_Drop() | Public Sub Listbox1_Drop() | ||
− | ListBox1.Add(<FONT Color=green>Scan</font>(<FONT Color=#B22222>Drag.Paste()</font>, "*//*\r*")[1]) | + | ListBox1.Add(<FONT Color=orange>Replace</font>(<FONT Color=green>Scan</font>(<FONT Color=#B22222>Drag.Paste()</font>, "*//*\r*")[1], "%20", " ")) |
End | End |
Versione delle 15:38, 18 ott 2023
Per ottenere il percorso, comprensivo del nome di un file, trascinato con la risorsa del Drag&Drop all'interno di un Controllo di testo, utilizza il Metodo ".Paste()" della Classe Drag.
Sarà opportuno lasciare vuoto il parametro previsto dal Metodo ".Paste()", giacché, se usassimo il formato "text/uri-list", eventuali file aventi nel nome caratteri particolari - come ad esempio il simbolo "+" o il simbolo "§" - questi sarebbero sostituiti nel risultato da uno spazio bianco.
Lasciando invece vuoto quel parametro, i simboli saranno salvaguardati, anche se, però, qualora il nome del file dovesse contenere uno spazio bianco, questo sarebbe riportato con il codice "%20" (sappiamo che il valore esadecimale &H20 corrisponde appunto nella tabella ASCII al carattere dello Spazio Bianco). Per ovviare a ciò useremo la funzione "Replace()".
Va sottolineato che la stringa del percorso, dopo il nome del file, prevede il carattere del "Nuova linea a capo" (&H10, gb.Newline) e del "Ritorno a capo" (&H0D, gb.Cr), seguito da alcuni valori numerici in ASCII.
Per eliminare il valore del &H0D, il codice prevederà l'uso della funzione Scan().
Mostriamo un semplice esempio, nel quale sarà possibile vedere in una ListBoxil percorso e il nome di un file che sarà stato trascinato con la modlità del Drag&Drop.
Public Sub Form_Open() ListBox1.Drop = True End Public Sub Listbox1_Drop() ListBox1.Add(Replace(Scan(Drag.Paste(), "*//*\r*")[1], "%20", " ")) End