AutoPlay Media Studio 9 ile RadioButton Kullanarak Dinamik TXT Dosyası Açma
AutoPlay Media Studio projelerinde kullanıcıya farklı seçenekler sunmak için RadioButton nesnelerini kullanabiliriz. Seçilen RadioButton üzerindeki metni okuyarak, aynı isimde bulunan bir TXT dosyasını otomatik olarak açtırmak da mümkündür. Böylece her dosya için ayrı ayrı kod yazmak yerine, RadioButton üzerinde yazan metni dosya adı olarak kullanabiliriz.
Örneğin projemizin AutoPlay\Docs klasöründe aşağıdaki TXT dosyalarının bulunduğunu düşünelim:
Kod:
Haberler.txt
Duyurular.txt
TeknikBilgiler.txt
Sayfamıza da üç adet RadioButton ve bir adet Button ekleyelim.
RadioButton'ların üzerindeki yazılar şöyle olsun:
Kod:
RadioButton1 = Haberler
RadioButton2 = Duyurular
RadioButton3 = TeknikBilgiler
Butona tıklandığında hangi RadioButton seçiliyse, onun üzerindeki yazıyı alıp ilgili TXT dosyasını açtıracağız.
RadioButton Üzerindeki Metni Alma
Öncelikle RadioButton üzerindeki yazıyı bir değişkene aktarabiliriz.
Kod:
dosya_adi = RadioButton.GetText("RadioButton1");
Örneğin RadioButton1 üzerinde Haberler yazıyorsa, dosya_adi değişkeninin değeri Haberler olacaktır.
Dinamik Dosya Yolunu Oluşturma
Şimdi bu değeri kullanarak TXT dosyasının yolunu oluşturalım.
Kod:
File.Open("AutoPlay\Docs\" .. dosya_adi .. ".txt");
Buradaki:
Kod:
"AutoPlay\Docs\"
dosyanın bulunduğu klasörü belirtir.
Kod:
dosya_adi
RadioButton üzerinden aldığımız dosya adıdır.
Kod:
".txt"
ise dosyanın uzantısını ekler.
Örneğin dosya_adi değişkeninin değeri Haberler ise oluşan dosya yolu şu şekilde olur:
Kod:
AutoPlay\Docs\Haberler.txt
RadioButton Seçimini Kontrol Etme
Şimdi işlemi Button nesnesinin On Click olayına ekleyelim.
Kod:
-- RadioButton1 seçiliyse
if RadioButton.GetChecked("RadioButton1") then
dosya_adi = RadioButton.GetText("RadioButton1");
File.Open("AutoPlay\\Docs\\" .. dosya_adi .. ".txt");
end
Bu kodda RadioButton1 seçiliyse, üzerindeki yazı alınır ve aynı isimdeki TXT dosyası açılır.
Üç RadioButton ile Örnek
Birden fazla RadioButton kullanacaksak her seçeneği kontrol edebiliriz.
Kod:
-- RadioButton1
if RadioButton.GetChecked("RadioButton1") then
dosya_adi = RadioButton.GetText("RadioButton1");
File.Open("AutoPlay\\Docs\\" .. dosya_adi .. ".txt");
end
-- RadioButton2
if RadioButton.GetChecked("RadioButton2") then
dosya_adi = RadioButton.GetText("RadioButton2");
File.Open("AutoPlay\\Docs\\" .. dosya_adi .. ".txt");
end
-- RadioButton3
if RadioButton.GetChecked("RadioButton3") then
dosya_adi = RadioButton.GetText("RadioButton3");
File.Open("AutoPlay\\Docs\\" .. dosya_adi .. ".txt");
end
Bu durumda kullanıcı Haberler seçeneğini işaretlerse:
Kod:
AutoPlay\Docs\Haberler.txt
Duyurular seçeneğini işaretlerse:
Kod:
AutoPlay\Docs\Duyurular.txt
TeknikBilgiler seçeneğini işaretlerse:
Kod:
AutoPlay\Docs\TeknikBilgiler.txt
dosyası açılır.
Daha Düzenli Kullanım
RadioButton sayısı arttığında kodu daha düzenli hale getirmek için her RadioButton'ın metnini doğrudan dosya adı olarak kullanabiliriz.
Örneğin:
Kod:
dosya_adi = "";
if RadioButton.GetChecked("RadioButton1") then
dosya_adi = RadioButton.GetText("RadioButton1");
elseif RadioButton.GetChecked("RadioButton2") then
dosya_adi = RadioButton.GetText("RadioButton2");
elseif RadioButton.GetChecked("RadioButton3") then
dosya_adi = RadioButton.GetText("RadioButton3");
end
if dosya_adi ~= "" then
File.Open("AutoPlay\Docs\" .. dosya_adi .. ".txt");
end
Bu yöntemde önce hangi RadioButton'ın seçildiği belirlenir. Seçilen RadioButton'ın üzerindeki yazı dosya_adi değişkenine aktarılır ve son olarak ilgili TXT dosyası açılır.
Dikkat Edilmesi Gereken Nokta
Lua'da metinleri birleştirmek için iki nokta (..) kullanılır. Bu nedenle dosya yolunu oluştururken aşağıdaki kullanım doğrudur:
Kod:
File.Open("AutoPlay\Docs\" .. dosya_adi .. ".txt");
Yanlış kullanımda ise metin ile değişken arasındaki birleştirme operatörü eksik olduğundan kod çalışmaz.
Ayrıca dosya adlarının RadioButton üzerindeki metinle aynı olması gerekir. Örneğin RadioButton üzerinde Haberler yazıyorsa, AutoPlay\Docs klasöründe Haberler.txt bulunmalıdır.
Bu yöntem özellikle AIO uygulamalarında, teknik arşivlerde, yardım dosyalarında ve çok sayıda TXT belgesinin bulunduğu AutoPlay Media Studio projelerinde pratik bir şekilde kullanılabilir.