Eseguire un file audio o Midi quando si clicca sulla MapView
Da Gambas-it.org - Wikipedia.
Versione del 22 mag 2023 alle 16:20 di Vuott (Discussione | contributi)
Cliccando sulla MapView è possibile eseguire un file audio o un file Midi.
È necessario attivare anche il Componente gb.media.
Mostriamo un esempio pratico, nel quale l'esecuzione sonora perdurerà per il solo tempo in cui si cliccherà sulla MapView, mantenendo premuto il tasto del mouse premuto: al suo rilascio l'esecuzione cesserà.
Private MapView1 As MapView Private mpt As New MapPoint(41.89018, 12.49230) Private mp As MediaPlayer Public Sub Form_Open() With Me .W = Screen.AvailableWidth .H = Screen.AvailableHeight .Arrangement = Arrange.Fill End With With MapView1 = New MapView(Me) As "MapView1" .Map.AddTile("GoogleMap", "https://mt0.google.com/vt/lyrs=s&hl=&x={x}&y={y}&z={z}") .Map.Zoom = 15 .Map.Center = mpt End With ' Crea un Oggetto "MediaPlayer" per eseguire l'audio: With mp = New MediaPlayer .URL = Media.URL("/percorso/del/file/audio o Midi") ' Imposta il Controllo ove cliccare per far eseguire l'audio: .SetWindow(MapView1) End With End Public Sub MapView1_MouseUp() ' Se si clicca con il tasto destro del mouse sulla mappa, si avvia l'esecuzione o l'arresto dell'audio: If Not Mouse.Right Then Return If mp.State == Media.Playing Then mp.Stop mp.Close ' Determina la pulitura della "MapView" e pertanto la cessazione dell'esecuzione del file audio o Midi: MapView1.Refresh Else Dim pt As New Point(Mouse.X, Mouse.Y) mpt = MapView1.Map.PixelToMapPointRel(pt) ' Imposta il Controllo "MediaPlayer", e la posizione sulla "MapView" ove si eseguirà l'audio: mp.SetWindow(MapView1, MapView1.Map.MapPointToPixelRel(mpt).X, MapView1.Map.MapPointToPixelRel(mpt).Y) ' Esegue il file audio o Midi: mp.Play() Endif End