rafaxplayer Posted February 5, 2012 Share Posted February 5, 2012 (edited) Günaydın arkadaşlar siteye yeni kayıt oldum bir arkadaşın önerisi üzerine ve çok önemli paylaşımlar var gerçekten bu yüzden tüm ekibi ve paylaşım yapanları kutlarım.Zamanla benimde katkılarım olur inşallah ben amsde bir çalışma yapıyorum ve takıldığım 1-2 yer var yardım ederseniz çok sevinirim projeme müzik çalar ekledim ve klasör ekle butonuna tıklayınca listeye alan mp3lerin 01.Parça ismi 00:00 süresi bu şekil listelenmesini istiyorum aslında yapmıtım fakat karışık bozuk bişi oldu parça isimi uzun olunca listeden süre falan taşıyordum örnekteki resimde gibi olmasını istiyorum şimdiden çok teşekkürler... [img]http://c1202.hizliresim.com/u/5/2fv0t.png[/img] Edited February 5, 2012 by rafaxplayer Quote Link to comment Share on other sites More sharing options...
Kral__ Posted February 5, 2012 Share Posted February 5, 2012 (edited) timera [code] nLen = Audio.GetLength(CHANNEL_BACKGROUND); Paragraph.SetText("Paragraf Objesi", SecondsToClock(nLen)); [/code] globale [code] function SecondsToClock(sSeconds) local nSeconds = String.ToNumber(sSeconds) if nSeconds == 0 then return "00:00"; else local nMins = string.format("%02.f", Math.Floor(nSeconds/60)); local nSecs = string.format("%02.f", Math.Floor(nSeconds - nMins *60)); return nMins..":"..nSecs end end [/code] bunula süreyi gösterirsin Edited February 5, 2012 by Kral__ Quote Link to comment Share on other sites More sharing options...
rafaxplayer Posted February 5, 2012 Author Share Posted February 5, 2012 (edited) verdiğin kodlar ile benim dediğimim alakası yok yukarıda resimde örnek gösterdim aynı o şekil olacak kodlarım şu şekilde Global: [code]function SecondsToClock(sSeconds) local nSeconds = String.ToNumber(sSeconds) if nSeconds == 0 then return "00:00"; else local nMins = string.format("%02.f", Math.Floor(nSeconds/60)); local nSecs = string.format("%02.f", Math.Floor(nSeconds - nMins *60)); return nMins..":"..nSecs end end[/code] Klasör Ekle Butonu: [code]dosya = Dialog.FolderBrowse("MP3 Klasörü Ekle", _DesktopFolder) if (dosya ~= "CANCEL") then tblFiles = File.Find(dosya, "*.mp3", true, false, nil, nil); if tblFiles ~= nil then for i,v in pairs (tblFiles) do local tblSplit = String.SplitPath(v) MediaPlayer.Load("player", dosya); toplam = MediaPlayer.GetLength("player"); ListBox.AddItem("playlist", tblSplit.Filename.." - ".. SecondsToClock(toplam)"", v) StatusDlg.Hide(); end end[/code] Fakat listboxa sıralı şekilde nası ekliycem anlayamdım 01. 02. gibi sürede olmuyor resimdeki gibi Edited February 5, 2012 by rafaxplayer Quote Link to comment Share on other sites More sharing options...
Kral__ Posted February 5, 2012 Share Posted February 5, 2012 (edited) müzik ekleme butonu On click: [spoiler] [code] tblMenu = {}; tblMenu[5] ={}; tblMenu[5].Text = "Aç"; tblMenu[5].ID = 101; tblMenu[5].IconID = 11; tblMenu[5].Checked = false; tblMenu[5].Enabled = true; tblMenu[4] ={}; tblMenu[4].Text = "Kaydet"; tblMenu[4].ID = 102; tblMenu[4].IconID = 11; tblMenu[4].Checked = false; tblMenu[4].Enabled = true; tblMenu[1] ={}; tblMenu[1].Text = "Gözat"; tblMenu[1].ID = 104; tblMenu[1].IconID = 11; tblMenu[1].Checked = false; tblMenu[1].Enabled = true; tblMenu[3] ={}; tblMenu[3].Text = "Temizle"; tblMenu[3].ID = 100; tblMenu[3].IconID = 11; tblMenu[3].Checked = false; tblMenu[3].Enabled = true; tblMenu[2] ={}; tblMenu[2].Text = "Seçerek Aç"; tblMenu[2].ID = 105; tblMenu[2].IconID = 11; tblMenu[2].Checked = false; tblMenu[2].Enabled = true; ptMouse = System.GetMousePosition(false, nil); nRes = Application.ShowPopupMenu(ptMouse.X, ptMouse.Y, tblMenu, TPM_RIGHTALIGN, TPM_TOPALIGN, true, false); if(nRes == 100)then Audio.Stop(CHANNEL_BACKGROUND); ListBox.DeleteItem("list", -1); elseif(nRes == 101)then LoadPlayList("list") elseif(nRes == 102)then CreatePlayList("list") elseif(nRes == 104)then dosya = Dialog.FolderBrowse("Mp3 Klasörünü seçin", _DesktopFolder) StatusDlg.Show(0, false); tblFiles = File.Find(dosya, "*.mp3", true, false, nil, nil); if tblFiles then for i,v in pairs (tblFiles) do local tblSplit = String.SplitPath(v) ListBox.AddItem("list", tblSplit.Filename, v); end end StatusDlg.Hide(); elseif(nRes == 105)then dosya = Dialog.FileBrowse(true, "Müzik Seçiniz", _DesktopFolder, "Müzik (*.mp3)|*.mp3|", "", "dat", true, false); StatusDlg.Show(0, false); if dosya then for i,v in pairs (dosya) do local tblSplit = String.SplitPath(v) ListBox.AddItem("list", tblSplit.Filename, v); end end StatusDlg.Hide(); end [/code] [/spoiler] global [spoiler] [code] --çalma listesi oluştur function CreatePlayList(list) local count = ListBox.GetCount(list) if (count>0) then local tFile = Dialog.FileBrowse(false,"Dosya Kaydet",_DesktopFolder,"Çalma Listesi(*.m3u)|*.m3u|","","m3u",false,false); if (tFile and tFile[1]~="CANCEL") then local str = "" for i=1,count do str = str .. ListBox.GetItemData(list,i).."\r\n" end TextFile.WriteFromString(tFile[1],str,false); end else Dialog.Message("Uyarı","Listede veri yok."); end end --çalma listesini yükle function LoadPlayList(list) local tFile = Dialog.FileBrowse(true,"Dosya Kaydet",_DesktopFolder,"Çalma Listesi(*.m3u)|*.m3u|","","m3u",false,false); if (tFile and tFile[1]~="CANCEL") then local readTbl = TextFile.ReadToTable(tFile[1]); if (readTbl) then ListBox.SetUpdate(list,false); for i=1,#readTbl do local split = String.SplitPath(readTbl[i]); ListBox.AddItem(list,split.Filename..split.Extension,readTbl[i]); end ListBox.SetUpdate(list,true); end end end [/code] [/spoiler] yaparsan daha gelişmiş olur genellikle bunu kullanıyorum şu 01. 02. gelirsek bunu bilmiyorum üstadlardan yardım rica et Edited February 5, 2012 by Kral__ Quote Link to comment Share on other sites More sharing options...
rafaxplayer Posted February 5, 2012 Author Share Posted February 5, 2012 ben ne diyorum sen ne veriyorsun arkadaşım yaa ne demek istediğimi anladın mı anlamadıysan resme bak lütfen klasör seçinde listboxa mp3ler ile beraber topalm sürelerini ve bşalarında 01.02 gibi eklesin diyorum verdiğin kodlar alakasız bilmiyorsan yazma bari rica ederiyorum Quote Link to comment Share on other sites More sharing options...
Kral__ Posted February 5, 2012 Share Posted February 5, 2012 müzik ekleme butonunun sadece bir işlev görüyordu geliştirmen için kod verdim istediğin şeyi sadece milano88 yaptı ona sor Quote Link to comment Share on other sites More sharing options...
rafaxplayer Posted February 5, 2012 Author Share Posted February 5, 2012 milano88'den başka kimse yardım edemezmi yani? kendisine mesaj attım fakat yok sanırım Quote Link to comment Share on other sites More sharing options...
Kral__ Posted February 5, 2012 Share Posted February 5, 2012 bilemiyorum en iyiy o yapar genellikle böyle işleri Quote Link to comment Share on other sites More sharing options...
NotToday Posted February 5, 2012 Share Posted February 5, 2012 Sadece mesele listelerken süreleri mi yazcaksın abicim ? Birde listboxa mı ? Quote Link to comment Share on other sites More sharing options...
El-Arabi Posted February 5, 2012 Share Posted February 5, 2012 (edited) Milano88 yardım etmedi yada müsait değildi bende yardım istemiştim.Senin dediğini ben bir inceleyip bakayım sana döneceğim özelden görüşelim. Edited February 5, 2012 by El-Arabi Quote Link to comment Share on other sites More sharing options...
rafaxplayer Posted February 5, 2012 Author Share Posted February 5, 2012 (edited) indigorosede buna benzer bir bilgi buldum fakat düzenleyemedim ben mp3leri windows media player ile çaldırıyorum belki biri bu kodları düzenleyebilir [code]function GetAudioFiles(Path, LB, LA) if Total ~= 0 then Total = 0 end tbType = {"*.mp3","*.wav","*.wma","*.mid","*.ogg","*.aif"," *.aiff","*.raw"}; for i,k in tbType do tbFiles = File.Find(Path, k, false, false, nil, nil); if (tbFiles ~= nil) then ListBox.SetUpdate(LB, false); ListBox.SetEnabled(LB, false); for i, v in tbFiles do filePath = String.SplitPath(v); ListBox.AddItem(LB, filePath.Filename, v); Audio.Load(CHANNEL_USER4, v, false, false); Total = Total + Audio.GetLength(CHANNEL_USER4); end ListBox.SetUpdate(LB, true); ListBox.SetEnabled(LB, true); local nTotal = String.ToNumber(Total) if nTotal == 0 then Label.SetText(LA, "00:00:00"); else nHours = string.format("%02.f", Math.Floor(nTotal/3600)); nMins = string.format("%02.f", Math.Floor(nTotal/60 - (nHours*60))); nSecs = string.format("%02.f", Math.Floor(nTotal - nHours*3600 - nMins *60)); Label.SetText(LA, nHours..":"..nMins..":"..nSecs); end end end end[/code] and heres how to call the function [code]folder = Dialog.FolderBrowse("Open Folder", _SourceDrive); if folder ~= "" and folder ~= "CANCEL" then GetAudioFiles(folder, "ListBox1", "Label1") end[/code] remember to set your listbox and label name [b]ReaLyMaN[/b] evet klasör ekle dediğimde mp3leri listeliyorya listboxa mp3ler ile beraber toplam sürelerini ve 01.02. şeklinde sıralanmasını istiyorum aynı örnekte resimde gibi sağol cevabın için Edited February 5, 2012 by rafaxplayer Quote Link to comment Share on other sites More sharing options...
NotToday Posted February 5, 2012 Share Posted February 5, 2012 Milano88 abimizin örneğine bir baksan süper olur.Labele zamanı yazdırıyor.Onu pekala inputa for döngüsüyle yazdırabilirsin.Bu arada milano88 işlerinden dolayı çok yoğun.Cevap verememesi normal. [quote]http://www.mediafire.com/?8fyfze8tecedt2o[/quote] Quote Link to comment Share on other sites More sharing options...
Kral__ Posted February 5, 2012 Share Posted February 5, 2012 ondada numaralandırma yokki Quote Link to comment Share on other sites More sharing options...
NotToday Posted February 5, 2012 Share Posted February 5, 2012 (edited) offf find file bul.Sonrada i tanımla.İsimleri yazdırırken başına ekle numaralarını.Hazır bekleme az kafanı kullan. Edited February 5, 2012 by ReaLyMaN Quote Link to comment Share on other sites More sharing options...
rafaxplayer Posted February 5, 2012 Author Share Posted February 5, 2012 örneğe baktım nLen = Audio.GetLength(CHANNEL_BACKGROUND) Label.SetText("Label2", tblSplit.Filename.. " - ".. SecondsToClock(nLen)); ile toplam süreyi yazdırıyor aynı şeyi bende yapıyorum olmuyor sadece media player ile MediaPlayer.Load("player", r2Path); toplam = MediaPlayer.GetLength("player"); ListBox.AddItem("playlist", String.SplitPath(r2Path).Filename" - "..SecondsToClock(toplam)"", r2Path) Quote Link to comment Share on other sites More sharing options...
Kral__ Posted February 5, 2012 Share Posted February 5, 2012 hocam ne saçma konuşuyorsunuz her yorum yaptığımda laf sokuyorsunuz o zmn örnek verirken adam gibi verim-n hazıcımıyız deiliz bilmediğimizden soruyoruz neymiş kafanızı kullanmıyorsunuz sen ilk önce kullan zaten kod verilmiş sadece numara kalmış olan bana oluyo. kardeşim sende araştır kaç tane çalışmalar var bi arasan neler bulursun Quote Link to comment Share on other sites More sharing options...
KintaRo Posted February 5, 2012 Share Posted February 5, 2012 sakin... Quote Link to comment Share on other sites More sharing options...
milano88 Posted February 5, 2012 Share Posted February 5, 2012 uffff konu uçmuşşş neyse cevabını verim dll ye indir ilk önce ve sonra klasör ekle butonundaki listboxadditem kodundan önce şu kodu yaz [code]uzunluk = DLL.CallFunction("AutoPlay\\Plugins\\MP3iNFO.dll", "MP3iNFOs", "\""..tamdosyayolu.."\",3", DLL_RETURN_TYPE_STRING, DLL_CALL_STDCALL); ListBox.AddItem("playlist", String.SplitPath(r2Path).Filename" - "..uzunluk"", r2Path) [/code] dll: [code]http://www.mediafire.com/?o4v554dkj49nz5m[/code] Quote Link to comment Share on other sites More sharing options...
NotToday Posted February 5, 2012 Share Posted February 5, 2012 Listboxdaki nesne sayısı alıp örneğin 1 den saşlayarak sıralar.Veya alternatif olarak da file.findla aynısı yapılır. [quote]nCount=ListBox.GetCount("ListBox1") if nCount ~= 0 then for i=1,nCount do result = ListBox.AddItem("ListBox1", i..".", ""); end end [/quote] Quote Link to comment Share on other sites More sharing options...
milano88 Posted February 5, 2012 Share Posted February 5, 2012 [b]ReaLyMaN[/b] beni savunduğun içinde ayriyetten teşekkür ederim kardeşim hala milano88 yardım etmiyor diyorlar ya hayretler içindeyim forumda kaç kişiye katkım bulundu Allah bilir rainmeterden tut..photoshop ams de player yapma sevdasına kadar hep ben sebeb oldun sanırım Quote Link to comment Share on other sites More sharing options...
Bitmap Posted February 5, 2012 Share Posted February 5, 2012 (edited) [quote name='milano88' date='05 February 2012 - 13:46 ' timestamp='1328442405' post='1150993'] [b]ReaLyMaN[/b] beni savunduğun içinde ayriyetten teşekkür ederim kardeşim hala milano88 yardım etmiyor diyorlar ya hayretler içindeyim forumda kaç kişiye katkım bulundu Allah bilir rainmeterden tut..photoshop ams de player yapma sevdasına kadar hep ben sebeb oldun sanırım [/quote] Sen Anlamak isteyenler anlattığın için hazıra konanların böyle bir ithamda bulunması normaldir. Sen anlamak isteyenler için anlatmaya devam et.. Armut piş ağzıma düş diyenler bir gün öğrenir belki öğrenmeyi. Edited February 5, 2012 by Kazım Quote Link to comment Share on other sites More sharing options...
NotToday Posted February 5, 2012 Share Posted February 5, 2012 (edited) [quote name='milano88' date='05 February 2012 - 13:46 ' timestamp='1328442405' post='1150993'] [b]ReaLyMaN[/b] beni savunduğun içinde ayriyetten teşekkür ederim kardeşim hala milano88 yardım etmiyor diyorlar ya hayretler içindeyim forumda kaç kişiye katkım bulundu Allah bilir rainmeterden tut..photoshop ams de player yapma sevdasına kadar hep ben sebeb oldun sanırım [/quote] Ben teşekkür ederim asıl abi.İyi kötü seni tanıyoruz abi.Birçok şeyde en başta geldin biliyorum.Daha önce de hayranlığımı dile getirmiştim :)Zaten her insanın işi gücü olabilir.Sorunu olabilir.Yardım etmiyor diye dile getirmek de yanlış.Bencillik sadece.Biride çıkıp sıhhati yerinde olsun yeter dese şaşacağım.Hem savunulmaya ihtiyacın yok abi.Bilen bilir, bilmeyende kendi bilir. Edited February 5, 2012 by ReaLyMaN Quote Link to comment Share on other sites More sharing options...
milano88 Posted February 5, 2012 Share Posted February 5, 2012 güzel yorumlarınız için teşekkür ederim arkadaşlar...konuyu açan arkadaşada 1-2 bişi daha söylemekte fayda var listboxa 01. 02. vss data eklerken adamın mp3 klasöründe 01.jcvcjhvjchv.mp3 diye bir şarkı var olacacağını da düşünmen lazım sonra 01.01fbfbb.mp3 gibi eklenince güzel bir görüntü vermez listboxta get itemtext ile parça önünde sayı falan bulunuyorsa bunuda sildirmen lazım en azından ben öyle yapıyorum ve verdiğim dll toplam süreleri 03:35 vss gibi göstermez 3:55 veya 3:5 der örneğin 03:05 ise bunuda return ile 00:00 a çevirmen lazım işin uzun biraz ama olur sıkma canını insan oğlu bu herşeyi yapar yeterki iste prohramlama dillerinide insanlar yazmış hadi kolay gelsin Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.