Differenze tra le versioni di "Mostrare il contenuto di un file di testo con il solo drop del file in un oggetto di testo"

Da Gambas-it.org - Wikipedia.
Riga 55: Riga 55:
 
   
 
   
 
   Dim b As Byte = 1
 
   Dim b As Byte = 1
 +
  Dim n As Byte
 
   Dim s1, s2 As String
 
   Dim s1, s2 As String
 
   
 
   
Riga 63: Riga 64:
 
   
 
   
 
     If s1 = "%" Then
 
     If s1 = "%" Then
       s1 = Space(1)
+
      n = Val("&" & Mid(percorsoFile, b + 1, 2))
 +
       s1 = Chr(n)
 
       b += 2
 
       b += 2
 
     Endif
 
     Endif

Versione delle 14:35, 15 mar 2014

Il caso è quello in cui si intende far mostrare da un oggetto di testo il contenuto di un file di testo solo e semplicemente trascinando tale file, preso anche da una finestra esterna all'applicativo Gambas, e rilasciandolo all'interno dell'oggetto di testo medesimo.


L'esempio pratico seguente prevede la presenza sul Form dell'applicativo Gambas di una TextArea e di una TextEdit. In tal modo si potrà fare l'esperimento trascinando e rilasciando, a piacimento, il file di testo sia all'interno della TextArea sia all'interno della TextEdit:

Public Sub Form_Open()
 
  With TextArea1
' Impostiamo la proprietà ".Drop" a "vera" per consentire l'attivazione dell'evento del "Drop"
    .Drop = True
    .Wrap = True
  End With
  
  With TextEdit1
' Impostiamo la proprietà ".Drop" a "vera" per consentire l'attivazione dell'evento del "Drop"
    .Drop = True
    .Wrap = True
  End With

End


Public Sub TextArea1_Drop()   ' Rilasciamo il file di testo nella "TextArea"
 
 Dim percorso, percorso_controllato As String


  TextArea1.Text = Drag.Data

  percorso = Mid(Trim(Split(TextArea1.Text, "\n")[0]), 8)

  percorso_controllato = controllo(percorso)
 
  TextArea1.Text = File.Load(percorso_controllato)

End


Public Sub TextEdit1_Drop()   ' Rilasciamo il file di testo nell'oggetto "TextEdit"
 
 Dim percorso, percorso_controllato As String
 

  TextEdit1.Text = Drag.Data

  percorso = Mid(Trim(Split(TextEdit1.Text, "\n")[0]), 8)

  percorso_controllato = controllo(percorso)

  TextEdit1.Text = File.Load(percorso_controllato)

End


Private Function controllo(percorsoFile As String) As String

 Dim b As Byte = 1
 Dim n As Byte 
 Dim s1, s2 As String


  While b < Len(percorsoFile) + 1

    s1 = Mid(percorsoFile, b, 1)

    If s1 = "%" Then
      n = Val("&" & Mid(percorsoFile, b + 1, 2))
      s1 = Chr(n)
      b += 2
    Endif
   
    s2 &= s1
    
    Inc b
 
  Wend
 
  Return s2
 
End