Differenze tra le versioni di "Aprire un file mediante la Classe 'DesktopFile' con il programma al quale è associato"

Da Gambas-it.org - Wikipedia.
 
(2 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
 
La Classe "''DesktopFile''" ci consente di aprire un file utilizzando il programma, al quale esso è associato.
 
La Classe "''DesktopFile''" ci consente di aprire un file utilizzando il programma, al quale esso è associato.
  
Per ottenere questo risultato, sarà necessario utilizzare anche la Classe ''DesktopMime''.
+
Per richiamare la Classe ''DesktopFile'' si dovrà attivare il Componente ''gb.desktop'' .
 
 
Per richiamare le Classi ''DesktopFile'' e ''DesktopMime'' si dovranno attivare i componenti ''gb.desktop'' e ''gb,desktop.x11'' .
 
  
  
Riga 11: Riga 9:
 
   
 
   
 
  '''Public''' Sub Form_Open()
 
  '''Public''' Sub Form_Open()
+
    
   Dim dm As DesktopMime
 
 
   Dim df As DesktopFile[]
 
   Dim df As DesktopFile[]
 
   Dim b As Byte
 
   Dim b As Byte
 +
 
 +
<FONT Color=gray>' ''Impostiamo il "MimeType" del file da aprire (ad esempio relativo a un file di testo), ed otteniamo un vettore contenente i programmi al quale esso è associato:''</font>
 +
  df = DesktopFile.FromMime("text/html")
 +
 
 +
<FONT Color=gray>' ''Mostra nome e percorso delle applicazioni alle quali il file è associato:''</font>
 +
  For b = 0 To df.Max
 +
    Print df[b].ProgramName, df[b].Path
 +
  Next
 +
 
 +
<FONT Color=gray>' ''Ad esempio apre il file con il primo programma al quale è associato, e ne assegna il processo ad una variabile di tipo "Process" per poterlo gestire in seguito:''</font>
 +
  pr = df[0].Run("<FONT Color=gray>''/percorso/del/file/da/aprire''</font>")
 
   
 
   
 +
'''End'''
 
   
 
   
  With dm = New DesktopMime
 
<FONT Color=gray>' ''Impostiamo il file da aprire, ed otteniamo un vettore contenente i programmi al quale esso è associato:''</font>
 
    df = .FromFile("<FONT Color=gray>''/percorso/del/file/da/aprire''</font>").GetApplications()
 
  End With
 
 
<FONT Color=gray>' ''Mostra nome e percorso delle applicazioni alle quali il file è associato:''</font>
 
  For b = 0 To df.Max
 
    Print df[b].ProgramName, df[b].Path
 
  Next
 
 
<FONT Color=gray>' ''Ad esempio apriamo il file con il primo programma al quale è associato,''
 
' ''e ne assegna il processo ad una variabile di tipo "Process":</font>
 
  pr = df[0].Run(df[0].Path)
 
 
   
 
   
 +
'''Public''' Sub Button1_Click()
 +
 
 +
<FONT Color=gray>' ''Cliccando sul tasto, si elimina il programma aperto:''</font>
 +
  pr.Kill
 +
 
 
  '''End'''
 
  '''End'''

Versione attuale delle 16:52, 18 ago 2021

La Classe "DesktopFile" ci consente di aprire un file utilizzando il programma, al quale esso è associato.

Per richiamare la Classe DesktopFile si dovrà attivare il Componente gb.desktop .


Vediamo un esempio pratico:

Private pr As Process


Public Sub Form_Open()
 
 Dim df As DesktopFile[]
 Dim b As Byte
 
' Impostiamo il "MimeType" del file da aprire (ad esempio relativo a un file di testo), ed otteniamo un vettore contenente i programmi al quale esso è associato:
 df = DesktopFile.FromMime("text/html")
 
' Mostra nome e percorso delle applicazioni alle quali il file è associato:
 For b = 0 To df.Max
   Print df[b].ProgramName, df[b].Path
 Next
 
' Ad esempio apre il file con il primo programma al quale è associato, e ne assegna il processo ad una variabile di tipo "Process" per poterlo gestire in seguito:
  pr = df[0].Run("/percorso/del/file/da/aprire")

End


Public Sub Button1_Click()
 
' Cliccando sul tasto, si elimina il programma aperto:
 pr.Kill
 
End