AutoPlay Media Studio – Media Player ile Web Sayfasını Birlikte Değiştirme
Bu konu, AutoPlay Media Studio ile müzik oynatıcı tarzında bir program hazırlamak isteyenler için güncellenmiştir.
Eski konuda istenen proje kısaca şu şekilde:
Kod:
+----------------------------------------------------------+
| |
| ŞARKI / CAMBO WEB SAYFASI |
| |
| Şarkı 1 ilgili web sayfası |
| Şarkı 2 ilgili web sayfası |
| Şarkı 3 ilgili web sayfası |
| |
| MEDIA PLAYER |
| |
+----------------------------------------------------------+
Amaç; Cambo içerisinden bir şarkı seçilip butona basıldığında:
[]Seçilen şarkının Media Player'da çalması
[]Aynı anda sağ taraftaki Web Object'in değiştirilmesi
[]Seçilen şarkıya ait farklı web sayfasının açılması
[]Bir sonraki şarkı seçildiğinde Web Object'in de yeni sayfaya geçmesi
şeklinde çalışan bir uygulama oluşturmaktır.
1. Projede Kullanılacak Nesneler
Örneğin sayfaya şu nesneleri ekleyebiliriz:
[]Media Player veya Video Object – müzik çalmak için
[]Web Object – web sayfasını göstermek için
- Button veya ListBox – şarkı seçmek için
AutoPlay Media Studio'da Web Object doğrudan proje içerisinde web sayfalarını gösterebilir. Web Object'in URL özelliği başlangıç sayfasını belirler ve çalışma sırasında Web.LoadURL ile adres değiştirilebilir.
2. Örneğin Üç Şarkımız Olsun
Şarkılarımız:
Kod:
Şarkı 1 → muzik\parca1.mp3
Şarkı 2 → muzik\parca2.mp3
Şarkı 3 → muzik\parca3.mp3
Web sayfaları ise:
Kod:
Şarkı 1 → https://site1.com
Şarkı 2 → https://site2.com
Şarkı 3 → https://site3.com
olabilir.
Burada önemli olan nokta,
şarkı ile web adresini eşleştirmektir.
3. Şarkı 1 İçin
Şarkı 1 butonunun
On Click olayında iki işlem yapılabilir:
Kod:
Video.Load("Video1", "muzik\parca1.mp3");
Video.Play("Video1");
Web.LoadURL("Web1", "https://site1.com");
Yani aynı butona:
[]Şarkıyı yükle
[]Şarkıyı oynat
- Web sayfasını değiştir
işlemleri atanabilir.
AMS'de Action'lar nesnelerin olaylarına bağlanarak birden fazla işlemi sırayla gerçekleştirebilir.
4. Şarkı 2
İkinci butonda:
Kod:
Video.Load("Video1", "muzik\parca2.mp3");
Video.Play("Video1");
Web.LoadURL("Web1", "https://site2.com");
Şarkı 2 çalmaya başlar ve Web Object otomatik olarak ikinci siteye gider.
5. Şarkı 3
Üçüncü butonda:
Kod:
Video.Load("Video1", "muzik\parca3.mp3");
Video.Play("Video1");
Web.LoadURL("Web1", "https://site3.com");
kullanılabilir.
6. Daha Düzenli Bir Sistem
Çok sayıda şarkı varsa her butona uzun uzun kod yazmak yerine şarkı ve web adreslerini bir tabloda tutmak daha kullanışlıdır.
Örneğin:
Kod:
Sarkilar = {
{
Dosya = "muzik\parca1.mp3",
Web = "https://site1.com"
},
{
Dosya = "muzik\parca2.mp3",
Web = "https://site2.com"
},
{
Dosya = "muzik\parca3.mp3",
Web = "https://site3.com"
}
};
Daha sonra seçilen şarkının sıra numarasına göre hem müzik hem de web adresi alınabilir.
Örneğin:
Kod:
function SarkiyiCal(index)
local parca = Sarkilar[index];
if parca then
Video.Load("Video1", parca.Dosya);
Video.Play("Video1");
Web.LoadURL("Web1", parca.Web);
end
end
Birinci şarkı için:
ikinci şarkı için:
üçüncü şarkı için:
kullanılabilir.
7. Cambo ile Birlikte Kullanım
Eğer Cambo'daki seçim bir
ListBox üzerinden yapılıyorsa, seçilen satırın sıra numarası alınarak aynı numaraya ait müzik ve web adresi çalıştırılabilir.
AMS'de ListBox'tan seçilen öğenin bilgileri alınarak ilgili dosyanın açılması mümkündür.
Örneğin mantık:
Kod:
Cambo'dan seçim
↓
Seçilen şarkının numarası
↓
+----------------------+
| Şarkı dosyası |
| Web adresi |
+----------------------+
↓
+----------------------+
| Media Player |
| Şarkıyı çal |
+----------------------+
+
+----------------------+
| Web Object |
| Web sayfasını aç |
+----------------------+
şeklinde olabilir.
8. Sonuç
Bu proje AutoPlay Media Studio ile yapılabilir.
Temel mantık:
Kod:
ŞARKI SEÇ
|
+----> Media Player'da şarkıyı oynat
|
+----> Web Object'te ilgili sayfayı aç
Böylece kullanıcı Cambo üzerinden hangi şarkıyı seçerse, o şarkıya bağlı web sayfası da otomatik olarak sağ taraftaki Web Object içerisinde açılabilir.
Çok sayıda şarkı kullanılacaksa, her butona ayrı kod yazmak yerine şarkı adı, dosya yolu ve web adreslerini bir tablo içerisinde tutup tek bir fonksiyonla yönetmek daha doğru olacaktır.
Not: Eski projede kullanılan Cambo nesnesinin ve Media Player'ın nasıl yapılandırıldığına göre kodun ilgili bölümü değişebilir. Özellikle mevcut .apz proje dosyası varsa, kullanılan nesnelerin isimlerine göre doğrudan çalışacak kod hazırlanabilir.