Differenze tra le versioni di "Ottenere il percorso di un file trasportato e rilasciato con Drag&Drop"

Da Gambas-it.org - Wikipedia.
(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