Differenze tra le versioni di "Eseguire un file MIDI mediante l'oggetto MediaView del componente gb.media.form"

Da Gambas-it.org - Wikipedia.
(Creata pagina con 'Il componente ''gb.media.form'' (da attivare congiuntamente con il componente ''gb.media'') fornisce l'oggetto ''MediaView'' che consente di eseguire agevolmente un file Midi....')
 
Riga 12: Riga 12:
 
   End With
 
   End With
 
   
 
   
 +
'''End'''
 +
 +
 +
 +
==Incorporare un ''Button'' nell'oggetto ''MediaView'' per consentire l'uso di una finestra di Dialogo==
 +
L'oggetto ''MediaView'' è composto, in vero, di vari oggetti, fra i quali: ''DrawingArea'', ''Panel'', ''Hbox'', e qualche altro. Questi oggetti, in qualità di ''Figli'' dell'oggetto ''MediaView'', contribuiscono a fornire le caratteristiche funzionali ed estetiche del loro oggetto ''Padre''.
 +
 +
Con il codice è possibile non solo modificare molte proprietà di tali oggetti, ma anche di aggiungerne altri all'interno soprattutto di quegli oggetti, ''Figli'' dell'oggetto ''MediaView'', che sono di per sé degli ogetti ''Contenitori''. Quindi è possibile inserire uno o più oggetti negli oggetti ''Contenitori'' che sono a loro vollta ''Figli'' dell'oggetto ''MediaView''.
 +
 +
Per poter aggiungere ulteriori oggetti all'oggetto ''MediaView'', servendosi in vero - come abbiamo detto - dei suoi ''Figli Contenitori'', sarà necessario individuare tali oggetti ''Contenitori''.
 +
 +
In particolare, ad esempio, sarà possibile aggiungere un ''Button'' che consenta così di aprire una finestra di Dialogo, della Classe ''Dialog'', per scegliere i file Midi da far eseguire all'oggetto ''MediaView''. In questo caso l'oggetto ''Contenitore'', che potrà contenere adeguatamente sia dal punto di vista funzionale che estetico tale ''Button'' è a sua volta un oggetto ''Figlio'' di altro ''Contenitore'' a sua volta un oggetto ''Figlio'' di altro ''Contenitore''.
 +
 +
Mostriamo di seguito un possibile codice per realizzare quanto detto:
 +
'''Public''' Sub Form_Open()
 +
 
 +
  Dim ob As Object
 +
  Dim cb As Button
 +
 
 +
  ob = MediaView1.Children[0]
 +
  ob = ob.Children[0]
 +
  ob = ob.Children[2]
 +
 
 +
  With cb = New Button(ob.Children[3]) As "Apri"
 +
    .X = 10
 +
    .Y = 5
 +
    .W = 40
 +
    .H = 20
 +
    .Text = "Apri..."
 +
  End With
 +
 
 +
'''End'''
 +
 +
 +
'''Public''' Sub Apri_Click()
 +
 
 +
  Dim music1 As String
 +
 
 +
  With Dialog
 +
    .Title = "Apri file Midi..."
 +
    .Filter = ["*.mid", "Midi"]
 +
    If .OpenFile() Then Return
 +
    MediaView1.URL = .Path
 +
  End With
 +
 
 
  '''End'''
 
  '''End'''

Versione delle 09:32, 11 lug 2015

Il componente gb.media.form (da attivare congiuntamente con il componente gb.media) fornisce l'oggetto MediaView che consente di eseguire agevolmente un file Midi.

Come gli altri oggetti esso può essere posto sul Form dalla scheda Media nell'area dedicata agli oggetti nell'IDE di Gambas, oppure creato da codice. Esso sarà visibile sul Form alle coordinate e con le dimensioni prescelte.

Il file Midi potrà essere caricato mediante la proprietà .URL dell'oggetto MediaView, e successivamente essere eseguito, posto in pausa e fermato agendo manualmente con il puntatore del mouse sui tasti virtuali che riproducono quelli consueti di un riproduttore audio.

Mostriamo un semplicissimo esempio pratico, nel quale si presupporrà che l'oggetto MediaView sia stato posto sul Form dall'IDE di Gambas:

Public Sub Form_Open()
 
 With MediaView1
   .URL = "/percorso/del/file.mid"    
 End With

End


L'oggetto MediaView è composto, in vero, di vari oggetti, fra i quali: DrawingArea, Panel, Hbox, e qualche altro. Questi oggetti, in qualità di Figli dell'oggetto MediaView, contribuiscono a fornire le caratteristiche funzionali ed estetiche del loro oggetto Padre.

Con il codice è possibile non solo modificare molte proprietà di tali oggetti, ma anche di aggiungerne altri all'interno soprattutto di quegli oggetti, Figli dell'oggetto MediaView, che sono di per sé degli ogetti Contenitori. Quindi è possibile inserire uno o più oggetti negli oggetti Contenitori che sono a loro vollta Figli dell'oggetto MediaView.

Per poter aggiungere ulteriori oggetti all'oggetto MediaView, servendosi in vero - come abbiamo detto - dei suoi Figli Contenitori, sarà necessario individuare tali oggetti Contenitori.

In particolare, ad esempio, sarà possibile aggiungere un Button che consenta così di aprire una finestra di Dialogo, della Classe Dialog, per scegliere i file Midi da far eseguire all'oggetto MediaView. In questo caso l'oggetto Contenitore, che potrà contenere adeguatamente sia dal punto di vista funzionale che estetico tale Button è a sua volta un oggetto Figlio di altro Contenitore a sua volta un oggetto Figlio di altro Contenitore.

Mostriamo di seguito un possibile codice per realizzare quanto detto:

Public Sub Form_Open()
 
 Dim ob As Object
 Dim cb As Button
  
  ob = MediaView1.Children[0]
  ob = ob.Children[0]
  ob = ob.Children[2]
  
  With cb = New Button(ob.Children[3]) As "Apri"
    .X = 10
    .Y = 5
    .W = 40
    .H = 20
    .Text = "Apri..."
  End With
  
End


Public Sub Apri_Click()
 
 Dim music1 As String
 
  With Dialog
    .Title = "Apri file Midi..."
    .Filter = ["*.mid", "Midi"]
    If .OpenFile() Then Return
    MediaView1.URL = .Path
  End With
  
End