# DTextEntry

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

## Açıklama

Oyuncunun seçip kopyalaması veya alternatif olarak kendi metinlerini girmelerine olanak tanıyan metinleri görüntülemek için kullanılabilecek bir form.

> **NOT:** `DTextEntry`'nizin ebeveynlerinden en az birinin bir [EditablePanel](https://gmod.tr/wiki/EditablePanel) veya ondan türetilmiş bir eleman (örneğin bir [DFrame](https://gmod.tr/wiki/DFrame)) olması gerekir, aksi takdirde odaklanamaz ve bu nedenle seçilemez hale gelir.
>
> Ayrıca, bahsi geçen panelde [Panel:MakePopup](https://gmod.tr/wiki/Panel:MakePopup) fonksiyonunu çağırmalısınız, yoksa `DTextEntry` çalışmaz.

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

## Ebeveyn

Bu sayfada listelenmeyen metotları vb. [TextEntry](https://gmod.tr/wiki/TextEntry)'den türetir.

## Uygular

Aşağıdaki kancaları/metotları uygular veya geçersiz kılar. Bunları geçersiz kılmak isterseniz, muhtemelen orijinal fonksiyonu da çağırmak istersiniz.

- [TextEntry:OnTextChanged](https://gmod.tr/wiki/TextEntry:OnTextChanged)
- [PANEL:Think](https://gmod.tr/wiki/PANEL:Think)
- [PANEL:OnRemove](https://gmod.tr/wiki/PANEL:OnRemove)
- [PANEL:Paint](https://gmod.tr/wiki/PANEL:Paint)
- [PANEL:PerformLayout](https://gmod.tr/wiki/PANEL:PerformLayout)
- [PANEL:OnMousePressed](https://gmod.tr/wiki/PANEL:OnMousePressed)
- [PANEL:GenerateExample](https://gmod.tr/wiki/PANEL:GenerateExample)

## Olaylar

DTextEntry:[OnChange](https://gmod.tr/wiki/DTextEntry:OnChange)()

Kullanıcı DTextEntry içindeki metni değiştirdiğinde DTextEntry:OnTextChanged tarafından çağrılır. DTextEntry metni değiştiğinde özel davranış tanımlamak için bu fonksiyonu geçersiz kılmalısınız.

DTextEntry:[OnEnter](https://gmod.tr/wiki/DTextEntry:OnEnter)( [string](https://gmod.tr/wiki/string) value )

Bir DTextEntry üzerinde Enter tuşuna basıldığında çağrılır. DTextEntry:IsEditing bu geri çağrıda (callback) hala true döndürecektir!

DTextEntry:[OnGetFocus](https://gmod.tr/wiki/DTextEntry:OnGetFocus)()

DTextEntry odağı kazandığında çağrılır.

DTextEntry:[OnKeyCode](https://gmod.tr/wiki/DTextEntry:OnKeyCode)( [number](https://gmod.tr/wiki/number) keyCode )

Metin girişi odaklanmışken geçerli bir karakter yazıldığında DTextEntry'nin TextEntry:OnKeyCodeTyped geçersiz kılması (override) tarafından çağrılır.

DTextEntry:[OnLoseFocus](https://gmod.tr/wiki/DTextEntry:OnLoseFocus)()

DTextEntry odağı kaybettiğinde çağrılır.

DTextEntry:[OnValueChange](https://gmod.tr/wiki/DTextEntry:OnValueChange)( [string](https://gmod.tr/wiki/string) value )

DTextEntry'nin metin değişiklikleri uygulandığında çağrılır. (Ve eğer varsa, bağlı konsol değişkenine ayarlanır) Konsol değişkeni güncellenmese bile her metin değişikliğinde çağrılan bir fonksiyon için ayrıca DTextEntry:OnChange'e bakın. Metin değiştiğinde özel davranış tanımlamak için bu fonksiyonu geçersiz kılmalısınız. Bu metot şu durumlarda çağrılır: Yazı yazdıktan sonra Enter'a basıldığında DTextEntry:SetValue kullanıldığında Her tuşa basıldığında - yalnızca DTextEntry:SetUpdateOnType true olarak ayarlanmışsa (varsayılanı false'tur)

## Metotlar

DTextEntry:[AddHistory](https://gmod.tr/wiki/DTextEntry:AddHistory)( [string](https://gmod.tr/wiki/string) text )

DTextEntry'nin geçmişine bir giriş ekler. DTextEntry:SetHistoryEnabled'e bakın.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[AllowInput](https://gmod.tr/wiki/DTextEntry:AllowInput)( [string](https://gmod.tr/wiki/string) char )

Panelin değeri güncellendiğinde (kullanıcı girdisiyle veya başka bir şekilde) çağrılır. Bir kullanıcının TextEntry metnini değiştirip değiştiremeyeceğini belirlemenizi sağlar. Varsayılan olarak, bu sadece panelin sayısal karakterleri engelleyip engellemediğini kontrol eder ve değer herhangi bir sayısal karakter içeriyorsa düzenlenmesini önler. Bu aslında sadece TextEntry türevi elemanlarda çalışan bir motor kancasıdır. Karakter sınırlarını değiştirmenin bir yolunu arıyorsanız, Panel:SetMaximumCharCount'a bakın.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[CheckNumeric](https://gmod.tr/wiki/DTextEntry:CheckNumeric)( [string](https://gmod.tr/wiki/string) strValue )

Bir dizenin sayısal olup olmadığını döndürür. DTextEntry:SetNumeric false olarak ayarlanmışsa her zaman false döndürür.

[table](https://gmod.tr/wiki/table) DTextEntry:[GetAutoComplete](https://gmod.tr/wiki/DTextEntry:GetAutoComplete)( [string](https://gmod.tr/wiki/string) inputText )

Otomatik tamamlama seçenekleri listesi istendiğinde DTextEntry tarafından çağrılır. Geçersiz kılınması (override) amaçlanmıştır.

[table](https://gmod.tr/wiki/table) DTextEntry:[GetCursorColor](https://gmod.tr/wiki/DTextEntry:GetCursorColor)()

Bir DTextEntry'nin imleç rengini döndürür.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetDisabled](https://gmod.tr/wiki/DTextEntry:GetDisabled)()

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. Bunun yerine Panel:IsEnabled kullanın. Metin kutusunun devre dışı bırakılıp bırakılmadığını döndürür. Bunun yerine Panel:IsEnabled kullanın.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetDrawBackground](https://gmod.tr/wiki/DTextEntry:GetDrawBackground)()

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. DTextEntry:GetPaintBackground'un takma adıdır (alias). Onun yerine onu kullanın. Arka planın görüntülenip görüntülenmediğini belirtir.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetDrawBorder](https://gmod.tr/wiki/DTextEntry:GetDrawBorder)()

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. DTextEntry:SetDrawBorder tarafından ayarlanan değeri döndürür.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetEnterAllowed](https://gmod.tr/wiki/DTextEntry:GetEnterAllowed)()

Enter tuşuna basmanın panelin odağını kaybetmesine neden olup olamayacağını döndürür. Bu fonksiyon true döndürse bile çok satırlı bir DTextEntry'nin Enter tuşu kullanılarak sonlandırılamayacağını unutmayın.

[number](https://gmod.tr/wiki/number) DTextEntry:[GetFloat](https://gmod.tr/wiki/DTextEntry:GetFloat)()

DTextEntry'nin içeriğini sayı olarak döndürür.

[table](https://gmod.tr/wiki/table) DTextEntry:[GetHighlightColor](https://gmod.tr/wiki/DTextEntry:GetHighlightColor)()

Metin girişinin vurgu/metin seçim rengini döndürür. Eğer üzerine yazılmadıysa, derma arayüzü (skin) değerini döndürür. (colTextEntryTextHighlight)

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetHistoryEnabled](https://gmod.tr/wiki/DTextEntry:GetHistoryEnabled)()

DTextEntry'nin geçmiş özelliğinin etkin olup olmadığını döndürür. DTextEntry:AddHistory'e bakın.

[number](https://gmod.tr/wiki/number) DTextEntry:[GetInt](https://gmod.tr/wiki/DTextEntry:GetInt)()

DTextEntry:GetFloat'a benzer, ancak değeri en yakın tam sayıya yuvarlar.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetNumeric](https://gmod.tr/wiki/DTextEntry:GetNumeric)()

DTextEntry'ye yalnızca sayısal karakterlerin (123456789. -) girilip girilemeyeceğini döndürür.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetPaintBackground](https://gmod.tr/wiki/DTextEntry:GetPaintBackground)()

Arka planın görüntülenip görüntülenmediğini belirtir

[table](https://gmod.tr/wiki/table) DTextEntry:[GetPlaceholderColor](https://gmod.tr/wiki/DTextEntry:GetPlaceholderColor)()

Panel yer tutucusunun mevcut rengini döndürür

[string](https://gmod.tr/wiki/string) DTextEntry:[GetPlaceholderText](https://gmod.tr/wiki/DTextEntry:GetPlaceholderText)()

DTextEntry:SetPlaceholderText ile ayarlanan yer tutucu metnini döndürür.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetTabbingDisabled](https://gmod.tr/wiki/DTextEntry:GetTabbingDisabled)()

Panelin sekme (tab) tuşunu kabul edip etmediğini döndürür.

[table](https://gmod.tr/wiki/table) DTextEntry:[GetTextColor](https://gmod.tr/wiki/DTextEntry:GetTextColor)()

Bir DTextEntry'nin metin rengini döndürür.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[GetUpdateOnType](https://gmod.tr/wiki/DTextEntry:GetUpdateOnType)()

DTextEntry'nin her karakter yazıldığında veya silindiğinde mi yoksa yalnızca Enter'a basıldığında mı DTextEntry:OnValueChange'i çalıştıracak şekilde ayarlanıp ayarlanmadığını döndürür.

[boolean](https://gmod.tr/wiki/boolean) DTextEntry:[IsEditing](https://gmod.tr/wiki/DTextEntry:IsEditing)()

Bu DTextEntry'nin düzenlenip düzenlenmediğini döndürür. (yani odaklanmış olup olmadığını)

DTextEntry:[OnTextChanged](https://gmod.tr/wiki/DTextEntry:OnTextChanged)( [boolean](https://gmod.tr/wiki/boolean) noMenuRemoval )

Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız. DTextEntry içindeki metin değiştiğinde dahili olarak çağrılır. Bu, TextEntry:OnTextChanged'in bir uygulamasıdır. Bu fonksiyonu geçersiz kılmamalısınız. Bunun yerine DTextEntry:OnValueChange kullanın.

DTextEntry:[OpenAutoComplete](https://gmod.tr/wiki/DTextEntry:OpenAutoComplete)( [table](https://gmod.tr/wiki/table) tab )

Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız. Gerçekten DTextEntry:GetAutoComplete'ı kullanmalısınız. Girdi tablosuna dayanarak DTextEntry için bir DMenu oluşturur.

DTextEntry:[SetCursorColor](https://gmod.tr/wiki/DTextEntry:SetCursorColor)( [table](https://gmod.tr/wiki/table) color )

DTextEntry'deki imlecin rengini (yanıp sönen çizgi) ayarlar.

DTextEntry:[SetDisabled](https://gmod.tr/wiki/DTextEntry:SetDisabled)( [boolean](https://gmod.tr/wiki/boolean) disabled )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. Bunun yerine Panel:SetEnabled kullanın. Bir DTextEntry'de girdiyi devre dışı bırakır ve görsel olarak grileştirir. Bu, metin kutusunu görsel olarak değiştirmeyen DTextEntry:SetEditable'dan farklıdır.

DTextEntry:[SetDrawBackground](https://gmod.tr/wiki/DTextEntry:SetDrawBackground)( [boolean](https://gmod.tr/wiki/boolean) show )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. DTextEntry:SetPaintBackground'un takma adıdır (alias). Onun yerine onu kullanın.

DTextEntry:[SetDrawBorder](https://gmod.tr/wiki/DTextEntry:SetDrawBorder)( [boolean](https://gmod.tr/wiki/boolean) bool )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. Hiçbir şey yapmaz.

DTextEntry:[SetEditable](https://gmod.tr/wiki/DTextEntry:SetEditable)( [boolean](https://gmod.tr/wiki/boolean) enabled )

Bir DTextEntry'de Girdiyi devre dışı bırakır. Bu, DTextEntry:SetDisabled'dan farklıdır - SetEditable, metin kutusunun görünümünü etkilemez.

DTextEntry:[SetEnterAllowed](https://gmod.tr/wiki/DTextEntry:SetEnterAllowed)( [boolean](https://gmod.tr/wiki/boolean) allowEnter )

Çok satırlı olmadığı sürece, Enter tuşuna basmanın DTextEntry'nin odağı kaybetmesine neden olup olmayacağını ayarlar. Bu varsayılan olarak doğrudur (true).

DTextEntry:[SetFont](https://gmod.tr/wiki/DTextEntry:SetFont)( [string](https://gmod.tr/wiki/string) font )

DTextEntry'nin yazı tipini değiştirir.

DTextEntry:[SetHighlightColor](https://gmod.tr/wiki/DTextEntry:SetHighlightColor)( [table](https://gmod.tr/wiki/table) color )

Metin girişinin varsayılan vurgu/metin seçim rengini ayarlar/geçersiz kılar.

DTextEntry:[SetHistoryEnabled](https://gmod.tr/wiki/DTextEntry:SetHistoryEnabled)( [boolean](https://gmod.tr/wiki/boolean) enable )

DTextEntry'nin geçmiş özelliğini etkinleştirir veya devre dışı bırakır. Bu, oyuncunun yukarı ve aşağı ok tuşlarını kullanarak geçmiş öğeleri arasında gezinmesini sağlar. DTextEntry:AddHistory'e bakın.

DTextEntry:[SetNumeric](https://gmod.tr/wiki/DTextEntry:SetNumeric)( [boolean](https://gmod.tr/wiki/boolean) numericOnly )

Girdi olarak sayısal olmayan karakterlerin reddedilip reddedilmeyeceğini ayarlar. Sayısal karakterler şunlardır: 1234567890. -

DTextEntry:[SetPaintBackground](https://gmod.tr/wiki/DTextEntry:SetPaintBackground)( [boolean](https://gmod.tr/wiki/boolean) show )

DTextEntry'nin varsayılan arka planının gösterilip gösterilmeyeceğini ayarlar.

DTextEntry:[SetPlaceholderColor](https://gmod.tr/wiki/DTextEntry:SetPlaceholderColor)( [table](https://gmod.tr/wiki/table) color = Color(128, 128, 128) )

Yer tutucu rengini ayarlamanıza izin verir.

DTextEntry:[SetPlaceholderText](https://gmod.tr/wiki/DTextEntry:SetPlaceholderText)( [string](https://gmod.tr/wiki/string) text = nil )

Metin girişinde kullanıcı metni yokken gösterilecek olan yer tutucu metnini ayarlar. Oyuncu yazmaya karar verirse yer tutucu metnini silmek zorunda kalmaz.

DTextEntry:[SetTabbingDisabled](https://gmod.tr/wiki/DTextEntry:SetTabbingDisabled)( [boolean](https://gmod.tr/wiki/boolean) enabled )

Panelin sekme (tab) tuşunu kabul edip etmeyeceğini ayarlar. Sekme tuşunu devre dışı bırakmak, panelin fare ile odağını kaybetmesini engeller, ancak diğer klavye odaklarına odaklanmak için hala çalışır.

DTextEntry:[SetTextColor](https://gmod.tr/wiki/DTextEntry:SetTextColor)( [table](https://gmod.tr/wiki/table) color )

DTextEntry'nin metin rengini ayarlar.

DTextEntry:[SetUpdateOnType](https://gmod.tr/wiki/DTextEntry:SetUpdateOnType)( [boolean](https://gmod.tr/wiki/boolean) updateOnType )

Her karakter yazdığımızda veya sildiğimizde mi yoksa yalnızca Enter'a basıldığında mı DTextEntry:OnValueChange'i tetiklememiz gerektiğini ayarlar.

DTextEntry:[SetValue](https://gmod.tr/wiki/DTextEntry:SetValue)( [string](https://gmod.tr/wiki/string) text )

DTextEntry'nin metnini ayarlar ve DTextEntry:OnValueChange'i çağırır. DTextEntry'nin metni yalnızca o anda içine yazı yazılmıyorsa değişir. Metni ne olursa olsun ayarlamayı tercih ederseniz, Panel:SetText'i kullanın.

DTextEntry:[UpdateConvarValue](https://gmod.tr/wiki/DTextEntry:UpdateConvarValue)()

Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız. DTextEntry:OnTextChanged, DTextEntry:OnEnter ve DTextEntry:OnLoseFocus tarafından kullanılır TextEntry ile ilişkili ConVar'ı yeni değerine günceller.

DTextEntry:[UpdateFromHistory](https://gmod.tr/wiki/DTextEntry:UpdateFromHistory)()

Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız. Geçmişten metin ayarlamak için dahili olarak kullanılır.

DTextEntry:[UpdateFromMenu](https://gmod.tr/wiki/DTextEntry:UpdateFromMenu)()

Bu dahili olarak kullanılır - kullanabiliyor olsanız da muhtemelen kullanmamalısınız. Otomatik tamamlama menüsünden metin ayarlamak için dahili olarak kullanılır.

### Örnek

Yerel oyuncunun sohbet penceresine mesaj yazdırmanıza olanak tanıyan bir metin giriş formu oluşturur.

```lua
concommand.Add( "test_textentry", function(ply)
	local frame = vgui.Create( "DFrame" )
	frame:SetSize( 400, 200 )
	frame:Center()
	frame:MakePopup()

	local TextEntry = vgui.Create( "DTextEntry", frame ) -- formu frame'in bir çocuğu olarak oluştur
	TextEntry:Dock( TOP )
	TextEntry.OnEnter = function( self )
		chat.AddText( self:GetValue() )	-- textentry metnini bir sohbet mesajı olarak yazdır
	end

	local TextEntryPH = vgui.Create( "DTextEntry", frame )
	TextEntryPH:Dock( TOP )
	TextEntryPH:DockMargin( 0, 5, 0, 0 )
	TextEntryPH:SetPlaceholderText( "Ben bir yer tutucuyum" )
	TextEntryPH.OnEnter = function( self )
		chat.AddText( self:GetValue() )
	end
end )
```

**Çıktı:**

![image.png](https://gmod.tr/api/uploads/wiki/1c0aa4e74176ec44985c.png)

### Örnek

Bir göz atma düğmesiyle bir metin girişi oluşturur.

```lua
-- Yeni bir çerçeve (pencere) oluştur
        local frame = vgui.Create( "DFrame" )
        frame:SetSize( 300, 300 )  -- Çerçevenin boyutunu ayarla
        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

        -- Çerçeve içinde bir metin giriş alanı oluştur
        local tEntry = vgui.Create("DTextEntry", frame)
        tEntry:Dock(TOP)  -- Metin girişini çerçevenin üstüne yerleştir

        -- Metin giriş alanı içinde yeni bir düğme oluştur
        local browseBtn = vgui.Create("DButton", tEntry)
        browseBtn:SetText("...")  -- Düğmenin metnini ayarla
        browseBtn:SetWidth(20)  -- Düğmenin genişliğini ayarla
        browseBtn:Dock(RIGHT)  -- Düğmeyi metin giriş alanının sağına yerleştir

        -- Göz atma düğmesine tıklandığında çağrılacak fonksiyon
		-- Bir referans veya anonim olabilir (bu durumdaki gibi)
        browseBtn.DoClick = function()
            -- Belirli dosya türleri için bir tarayıcı açacak kod buraya gelmelidir
        end
```

**Çıktı:**

![tentry_w_browse.png](https://gmod.tr/api/uploads/wiki/3f35f2513f9ffa28e690.png)

(Dosya tarayıcısının nasıl yapılacağına ilişkin talimatlar için bkz. [DFileBrowser](https://gmod.tr/wiki/DFileBrowser))

- [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/DTextEntry
