hamza

Yeni Üye
Kayıtlı Üye
hocam butona tıklayınca docs klasöründeki .txt dosyasını açsın istiyorum ama .txt'nin adını
radio button un adından alacak radio butonun adını docs klasöründeki .txt'den çekebildim fakat o adı kullanarak açtıramadım şöyle bişey yzdım olmadı
a = RadioButton.GetText("RadioButton1");
if RadioButton.GetChecked("RadioButton1") then
File.Open("AutoPlay\\Docs\\"..a".txt");
end ;
 

AMS 9: Nesnelerden Veri Çekerek Dinamik Dosya Açma Rehberi​

AutoPlay Media Studio'da projeleriniz geliştikçe, sabit dosyalar yerine kullanıcının seçimine göre farklı dosyaları açtırmanız gerekebilir. Bu rehberde, bir RadioButton (Seçenek Düğmesi) üzerindeki metni okuyup, o isme sahip bir dosyayı nasıl otomatik açtıracağımızı öğreneceğiz.

Senaryo​

Elimizde bir Docs klasörü var ve içinde Haberler.txt, Duyurular.txt gibi dosyalar bulunuyor. Kullanıcı hangi seçeneği seçerse, buton o dosyayı açacak.

Adım 1: RadioButton'dan Metni Çekmek​

Öncelikle seçili olan düğmenin üzerindeki yazıyı bir değişkene aktarmalıyız:
Kod:
-- RadioButton1 üzerindeki metni alalım
dosya_adi = RadioButton.GetText("RadioButton1");
Adım 2: Dosyayı Dinamik Olarak Açmak (Kritik Nokta)
Burada en sık yapılan hata, dosya yolunu birleştirirken noktaları (..) yanlış kullanmaktır. Lua dilinde metinleri birleştirmek için iki nokta kullanılır.

Doğru Kod Yapısı:
Kod:
-- Eğer RadioButton seçiliyse dosyayı aç
if RadioButton.GetChecked("RadioButton1") then
    File.Open("AutoPlay\\Docs\\" .. dosya_adi .. ".txt", "", SW_SHOWNORMAL);
end

Neden​

Kodun içindeki .. dosya_adi .. kısmı, "buraya aradaki değişkeni yapıştır" demektir. Eğer aradaki noktaları unutursanız program "dosya yolu nerede bitiyor, isim nerede başlıyor" anlayamaz ve hata verir.

Teknik İpucu​

Üyelerin işini kolaylaştırmak için şu notu ekleyebilirsin:

Dikkat: Dosya yollarında her zaman çift ters eğik çizgi (\\) kullanın. Tek çizgi kullanırsanız program bunu bir komut sanabilir ve dosyanız açılmaz.
 
Geri
Yukarı