# DFileBrowser

- **Ortam:** İstemci
- **İngilizce aslı:** https://wiki.facepunch.com/gmod/DFileBrowser
- **Çeviri tarihi:** 2025-09-08

## Açıklama

Ağaç ve liste tabanlı bir dosya tarayıcısı.

Klasör (dizin) adı ve dosya uzantısına göre filtrelemeye izin verir ve modelleri [SpawnIcon](https://gmod.tr/wiki/SpawnIcon) olarak görüntüleyebilir.

[Kaynağı görüntüle](https://github.com/Facepunch/garrysmod/blob/master/garrysmod/lua/vgui/dfilebrowser.lua)

## Ebeveyn

Bu sayfada listelenmeyen metotları vb. [DPanel](https://gmod.tr/wiki/DPanel)'dan miras alır.

## Olaylar

DFileBrowser:[OnDoubleClick](https://gmod.tr/wiki/DFileBrowser:OnDoubleClick)( [Panel](https://gmod.tr/wiki/Panel) selectedPanel, [string](https://gmod.tr/wiki/string) filePath )

Bir dosyaya çift tıklandığında çağrılır. Bir dosyaya veya simgeye çift tıklamak hem bu olayı hem de DFileBrowser:OnSelect'i tetikler.

DFileBrowser:[OnRightClick](https://gmod.tr/wiki/DFileBrowser:OnRightClick)( [string](https://gmod.tr/wiki/string) filePath, [Panel](https://gmod.tr/wiki/Panel) selectedPanel )

Bir dosyaya sağ tıklandığında çağrılır. Model görüntüleyici modunda değilken, dosya zaten seçili değilse DFileBrowser:OnSelect de çağrılır.

DFileBrowser:[OnSelect](https://gmod.tr/wiki/DFileBrowser:OnSelect)( [Panel](https://gmod.tr/wiki/Panel) selectedPanel, [string](https://gmod.tr/wiki/string) filePath )

Bir dosya seçildiğinde çağrılır.

## Metotlar

DFileBrowser:[Clear](https://gmod.tr/wiki/DFileBrowser:Clear)()

Dosya ağacını ve listesini temizler ve tüm değerleri sıfırlar.

[string](https://gmod.tr/wiki/string) DFileBrowser:[GetBaseFolder](https://gmod.tr/wiki/DFileBrowser:GetBaseFolder)()

Dosya ağacının kök dizinini/klasörünü döndüren bir AccessorFunc.

[string](https://gmod.tr/wiki/string) DFileBrowser:[GetCurrentFolder](https://gmod.tr/wiki/DFileBrowser:GetCurrentFolder)()

Görüntülenmekte olan mevcut dizini/klasörü döndüren bir AccessorFunc.

[string](https://gmod.tr/wiki/string) DFileBrowser:[GetFileTypes](https://gmod.tr/wiki/DFileBrowser:GetFileTypes)()

Dosya listesindeki mevcut dosya türü filtresini döndüren bir AccessorFunc.

[Panel](https://gmod.tr/wiki/Panel) DFileBrowser:[GetFolderNode](https://gmod.tr/wiki/DFileBrowser:GetFolderNode)()

Dosya ağacının kaynaklandığı DTree Düğümünü döndürür. Bu, DTree'nin kök düğümünün bir alt öğesidir.

[boolean](https://gmod.tr/wiki/boolean) DFileBrowser:[GetModels](https://gmod.tr/wiki/DFileBrowser:GetModels)()

Model görüntüleyici modunun etkin olup olmadığını döndüren bir AccessorFunc. Bu modda, dosyalar liste yerine SpawnIcon olarak görüntülenir.

[string](https://gmod.tr/wiki/string) DFileBrowser:[GetName](https://gmod.tr/wiki/DFileBrowser:GetName)()

Dosya ağacı için kullanılan adı döndüren bir AccessorFunc.

[boolean](https://gmod.tr/wiki/boolean) DFileBrowser:[GetOpen](https://gmod.tr/wiki/DFileBrowser:GetOpen)()

Dosya ağacının açık olup olmadığını döndüren bir AccessorFunc.

[string](https://gmod.tr/wiki/string) DFileBrowser:[GetPath](https://gmod.tr/wiki/DFileBrowser:GetPath)()

Dosya ağacının erişim yolunu döndüren bir AccessorFunc. Bu, DFileBrowser:SetPath ile değiştirilmediği sürece GAME'dir. Yolların nasıl çalıştığı hakkında bilgi için file.Read'e bakın.

[string](https://gmod.tr/wiki/string) DFileBrowser:[GetSearch](https://gmod.tr/wiki/DFileBrowser:GetSearch)()

Dosya ağacındaki mevcut arama filtresini döndüren bir AccessorFunc.

DFileBrowser:[SetBaseFolder](https://gmod.tr/wiki/DFileBrowser:SetBaseFolder)( [string](https://gmod.tr/wiki/string) baseDir )

Dosya ağacının kök dizinini/klasörünü ayarlayan bir AccessorFunc. Dosya ağacının görüntülenmesi için bu değerin ayarlanması gerekir.

DFileBrowser:[SetCurrentFolder](https://gmod.tr/wiki/DFileBrowser:SetCurrentFolder)( [string](https://gmod.tr/wiki/string) currentDir )

Dosya listesinin görüntüleneceği dizini/klasörü ayarlayan bir AccessorFunc.

DFileBrowser:[SetFileTypes](https://gmod.tr/wiki/DFileBrowser:SetFileTypes)( [string](https://gmod.tr/wiki/string) fileTypes = "*.*" )

Dosya listesi için dosya türü filtresini ayarlayan bir AccessorFunc. Bu, file.Find ile aynı dosya uzantısı joker karakterlerini kabul eder.

DFileBrowser:[SetModels](https://gmod.tr/wiki/DFileBrowser:SetModels)( [boolean](https://gmod.tr/wiki/boolean) showModels = false )

Model görüntüleyici modunu etkinleştirir veya devre dışı bırakır. Bu modda, dosyalar liste yerine SpawnIcon olarak görüntülenir. Bu yalnızca .mdl dosyaları için kullanılmalıdır; spawn simgeleri diğerleri için hata modelleri gösterecektir. Bkz. DFileBrowser:SetFileTypes

DFileBrowser:[SetName](https://gmod.tr/wiki/DFileBrowser:SetName)( [string](https://gmod.tr/wiki/string) treeName = "`baseFolder`" )

Dosya ağacı için kullanılacak adı ayarlayan bir AccessorFunc.

DFileBrowser:[SetOpen](https://gmod.tr/wiki/DFileBrowser:SetOpen)( [boolean](https://gmod.tr/wiki/boolean) open = false, [boolean](https://gmod.tr/wiki/boolean) useAnim = false )

Dosya ağacını açan veya kapatan bir AccessorFunc.

DFileBrowser:[SetPath](https://gmod.tr/wiki/DFileBrowser:SetPath)( [string](https://gmod.tr/wiki/string) path )

Dosya ağacı için erişim yolunu ayarlayan bir AccessorFunc. Bu, varsayılan olarak GAME olarak ayarlanmıştır. Yolların nasıl çalıştığı hakkında bilgi için file.Read'e bakın.

DFileBrowser:[SetSearch](https://gmod.tr/wiki/DFileBrowser:SetSearch)( [string](https://gmod.tr/wiki/string) filter = "*" )

Dosya ağacı için arama filtresini ayarlayan bir AccessorFunc. Bu, file.Find ile aynı joker karakterleri kabul eder.

[boolean](https://gmod.tr/wiki/boolean) DFileBrowser:[Setup](https://gmod.tr/wiki/DFileBrowser:Setup)()

Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. Bir temel yol ayarlandığında DTree'yi ve dosya görüntüleyiciyi kurmak için çağrılır. DFileBrowser:SetupTree ve DFileBrowser:SetupFiles'ı çağırır.

[boolean](https://gmod.tr/wiki/boolean) DFileBrowser:[SetupFiles](https://gmod.tr/wiki/DFileBrowser:SetupFiles)()

Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. DListView veya DIconBrowser'ı kurmak için DFileBrowser:Setup tarafından çağrılır. Simge tarayıcısı, model modundayken kullanılır. Bkz. DFileBrowser:SetModels.

[boolean](https://gmod.tr/wiki/boolean) DFileBrowser:[SetupTree](https://gmod.tr/wiki/DFileBrowser:SetupTree)()

Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. DTree'yi kurmak için DFileBrowser:Setup tarafından çağrılır.

DFileBrowser:[ShowFolder](https://gmod.tr/wiki/DFileBrowser:ShowFolder)( [string](https://gmod.tr/wiki/string) currentDir )

Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. Mevcut dizin için dosya veya simge listesini oluşturur. Dizini değiştirmek için DFileBrowser:SetCurrentFolder kullanmalısınız.

DFileBrowser:[SortFiles](https://gmod.tr/wiki/DFileBrowser:SortFiles)( [boolean](https://gmod.tr/wiki/boolean) descending = false )

Dosya listesini sıralar. Bu yalnızca model görüntüleyici kullanılmadığında işlevseldir. Bkz. DFileBrowser:SetModels

### Örnek

Bir DFileBrowser oluşturur ve data/persist klasörünü görüntüler. Tıklanan her dosya konsola yazdırılır.

```lua
local frame = vgui.Create( "DFrame" )
frame:SetSize( 500, 250 )
frame:SetSizable( true )
frame:Center()
frame:MakePopup()
frame:SetTitle( "DFileBrowser Örneği" )

local browser = vgui.Create( "DFileBrowser", frame )
browser:Dock( FILL )

browser:SetPath( "GAME" ) -- Erişim yolu, ör. GAME, LUA, DATA vb.
browser:SetBaseFolder( "data" ) -- Kök klasör
browser:SetOpen( true ) -- Alt klasörleri göstermek için ağacı aç
browser:SetCurrentFolder( "persist" ) -- persist klasöründeki dosyaları göster

function browser:OnSelect( path, pnl ) -- Bir dosyaya tıklandığında çağrılır
	print( path )
end
```

**Çıktı:** ![](https://gmod.tr/api/uploads/wiki/439a7c20e5a3ba53a010.png)

### Örnek

`props_` klasörlerinden model oluşturabilen bir DFileBrowser oluşturur.

> **NOT:** Yukarıdakiyle aynı [DFrame](https://gmod.tr/wiki/DFrame)'i kullanır

```lua
local frame = vgui.Create( "DFrame" )
frame:SetSize( 500, 250 )
frame:SetSizable( true )
frame:Center()
frame:MakePopup()
frame:SetTitle( "DFileBrowser Örneği" )

local browser = vgui.Create( "DFileBrowser", frame )
browser:Dock( FILL )

browser:SetPath( "GAME" ) -- Erişim yolu, ör. GAME, LUA, DATA vb.
browser:SetBaseFolder( "models" ) -- Kök klasör
browser:SetName( "Props_ Modelleri" ) -- Ağaçta gösterilecek isim
browser:SetSearch( "props_" ) -- "props_" ile başlayan klasörleri ara
browser:SetFileTypes( "*.mdl" ) -- Dosya türü filtresi
browser:SetOpen( true ) -- Ağacı açar (çift tıklama ile aynı)
browser:SetCurrentFolder( "props_badlands" ) -- Kullanılacak klasörü ayarla

function browser:OnSelect( path, pnl ) -- Bir dosyaya tıklandığında çağrılır
	RunConsoleCommand( "gm_spawn", path ) -- Tıkladığımız modeli oluştur
	frame:Close()
end
```

**Çıktı:** `Önizlemeye bakın`.

### Örnek

Yukarıdakiyle aynı, ancak model görüntülemeyi etkinleştirir. Aşağıdaki satır yukarıdaki koda eklenmiştir.

```lua
browser:SetModels( true ) -- Liste yerine SpawnIcon'ları kullan
```

**Çıktı:** ![](https://gmod.tr/api/uploads/wiki/96c58dfcdfd3680b6e47.png)

### Örnek

Yukarıdakiyle aynı, ancak model görüntülemeyi etkinleştirir. Aşağıdaki satır yukarıdaki koda eklenmiştir.

```lua
browser:SetModels( true ) -- Liste yerine SpawnIcon'ları kullan
```

**Çıktı:** ![](https://gmod.tr/api/uploads/wiki/96c58dfcdfd3680b6e47.png)

### Örnek

Seslere göz atmak ve ses seçmek için bir DFileBrowser oluşturur.

```lua
-- Yeni bir çerçeve (pencere) oluştur
        local frame = vgui.Create("DFrame")
        frame:SetSize( 500, 250 )  -- Çerçevenin boyutunu ayarla
        frame:SetSizable( true )  -- Çerçevenin yeniden boyutlandırılmasına izin ver
        frame:Center()  -- Çerçeveyi ekranda ortala
        frame:MakePopup()  -- Çerçevenin diğer pencerelerin önünde görünmesini ve kullanıcı girdisini kabul etmesini sağla
        frame:SetTitle( "Bir ses seçin:" )  -- Çerçevenin başlığını ayarla

        -- Çerçevenin içine bir dosya tarayıcısı oluştur
        local browser = vgui.Create( "DFileBrowser", frame )
        browser:Dock( FILL )  -- Tarayıcının tüm çerçeveyi doldurmasını sağla
        -- Tarayıcının başlayacağı yolu ayarla. "GAME", oyunun kök dizinine atıfta bulunan özel bir yoldur.
        browser:SetPath("GAME")
        -- Aramaya başlanacak temel klasörü 'sound' olarak ayarla (her eklentiden/oyundan gelen tüm sesleri içerir)
        browser:SetBaseFolder( "sound" )
        browser:SetOpen( true )  -- Tarayıcı oluşturulduğunda klasörü zaten açık olarak göster
        browser:SetFileTypes(".wav .mp3 .ogg")  -- Tarayıcının yalnızca görüntülemesi gereken dosya türlerini filtrele

        local s = nil  -- Önizleme sesini tutmak için yerel bir değişken başlat

        -- Tarayıcıda bir dosyaya çift tıklandığında ne olacağını tanımla
        browser.OnDoubleClick = function(panel, path)
            if(s ~= nil) then s:Stop() end  -- O an çalan bir ses varsa, durdur
            -- Sesi seç ve ConVar'ımızın değeri olarak ayarla, yoldan "sound/" kısmını kaldır
            GetConVar("mysoundconvar"):SetString(string.Replace(path, "sound/",""))
            frame:Close()  -- Çerçeveyi kapat
        end

        -- Tarayıcıda bir dosyaya tıklandığında ne olacağını tanımla
        browser.OnSelect = function(panel, path)
            if(s ~= nil) then s:Stop() end  -- O an çalan bir ses varsa, durdur
            s = CreateSound(LocalPlayer(), string.Replace(path, "sound/",""))  -- Seçilen dosyadan yeni bir ses oluştur ve çal
            s:Play()
        end
```

**Çıktı:**

![sound_browser.png](https://gmod.tr/api/uploads/wiki/f6c6078f25e2d675b96a.png)

- [GMod Wiki ana sayfası](https://gmod.tr/wiki)

---

[Tüm sunucular](https://gmod.tr/) · [GmodTR Launcher](https://gmod.tr/launcher) · [Rehber](https://gmod.tr/rehber) · [GMod Wiki](https://gmod.tr/wiki) · [GmodTR nedir?](https://gmod.tr/hakkinda) · [Sunucu ekle](https://gmod.tr/sunucu-ekle) · [Discord](https://discord.gg/gmodtr)

Kaynak: https://gmod.tr/wiki/DFileBrowser
