# ImageCheckBox

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

## Açıklama

[DCheckBox](https://gmod.tr/wiki/DCheckBox) ve [DImageButton](https://gmod.tr/wiki/DImageButton)'a benzeyen, işaretli durum görseli özelleştirilebilen bir onay kutusu panelidir.

Dahili olarak [Material](https://gmod.tr/wiki/Material) panelini kullanır. Bir etikete sahip olamaz.

> **NOT:** Eğer bir materyal ayarlanmadıysa hata verir.

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

## Ebeveyn

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

## Uygular

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

- [PANEL:Paint](https://gmod.tr/wiki/PANEL:Paint)
- [PANEL:PerformLayout](https://gmod.tr/wiki/PANEL:PerformLayout)

## Metotlar

[boolean](https://gmod.tr/wiki/boolean) ImageCheckBox:[GetChecked](https://gmod.tr/wiki/ImageCheckBox:GetChecked)()

ImageCheckBox'in işaretli durumunu döndürür.

ImageCheckBox:[Set](https://gmod.tr/wiki/ImageCheckBox:Set)( [boolean](https://gmod.tr/wiki/boolean) OnOff )

Onay kutusunun işaretli durumunu ayarlar. İşaretli durum ImageCheckBox.State ile elde edilebilir.

ImageCheckBox:[SetChecked](https://gmod.tr/wiki/ImageCheckBox:SetChecked)( [boolean](https://gmod.tr/wiki/boolean) bOn )

Onay kutusunun işaretli durumunu ayarlar. İşaretli durum ImageCheckBox:GetChecked ile alınabilir.

ImageCheckBox:[SetMaterial](https://gmod.tr/wiki/ImageCheckBox:SetMaterial)( [string](https://gmod.tr/wiki/string) mat )

ImageCheckBox işaretlendiğinde görünecek olan materyali ayarlar. Dahili olarak Material:SetMaterial'ı çağırır. Eğer bir materyal ayarlanmadıysa hata verir.

### Örnek

[ImageCheckBox](https://gmod.tr/wiki/ImageCheckBox) kullanımına bir örnek.

```lua
local DFrame = vgui.Create( "DFrame" ) -- DFrame'i oluştur
DFrame:SetSize( 300, 305 ) -- Boyutunu ayarla
DFrame:Center() -- Ortala
DFrame:SetTitle( "Kontrol Listesi" ) -- Bir başlık ata
DFrame:MakePopup() -- Açılır pencere yap
DFrame.Items = {} -- Satırları saklamak için tablo oluştur

local Head = DFrame:Add( "DPanel" ) -- Başlık satırını oluştur
Head:Dock( TOP ) -- Kenara yerleştir
Head:SetHeight( 20 ) -- Yüksekliği ayarla

function Head:Paint( w, h )
	local completed = 0 -- İşaretlenmiş ImageCheckBox'lerin sayısını saklamak için değişken

	for k, v in ipairs( DFrame.Items ) do
		if ( v.ImageCheckBox:GetChecked() ) then
			completed = completed + 1 -- ImageCheckBox'lerin durumunu al ve işaretlenmişleri say
		end
	end

	draw.SimpleText( "Toplam " .. #DFrame.Items .. " maddeden " .. completed .. " tanesini tamamladınız.", "DermaDefaultBold", w / 2, h / 2, Color( 255, 255, 255 ), TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER ) -- Metni çiz
end

-- Hızlıca öğe eklemek için yardımcı fonksiyon
local function addItem( text )
	local RulePanel = DFrame:Add( "DPanel" ) -- Bu öğe için kapsayıcı oluştur
	RulePanel:Dock( TOP ) -- Kenara yerleştir
	RulePanel:DockMargin( 0, 1, 0, 0 ) -- Her öğe arasına 1 piksellik boşluk ekle
	table.insert( DFrame.Items, RulePanel ) -- Satır listesine ekle

	local ImageCheckBox = RulePanel:Add( "ImageCheckBox" ) -- Görselli onay kutusu oluştur
	ImageCheckBox:SetMaterial( "icon16/accept.png" ) -- Görselini ayarla
	ImageCheckBox:SetWidth( 24 ) -- Onay kutusunu görselden biraz daha geniş yaparak daha hoş görünmesini sağla
	ImageCheckBox:Dock( LEFT ) -- Kenara yerleştir
	ImageCheckBox:SetChecked( false ) -- İşaretlenmemiş olarak ayarla
	RulePanel.ImageCheckBox = ImageCheckBox -- Çağırmak için referans ekle

	local DLabel = RulePanel:Add( "DLabel" ) -- Metin oluştur
	DLabel:SetText( text ) -- Metni ayarla
	DLabel:Dock( FILL ) -- Kenara yerleştir
	DLabel:DockMargin( 5, 0, 0, 0 ) -- Metni biraz sağa kaydır
	DLabel:SetTextColor( Color( 0, 0, 0 ) ) -- Metin rengini siyaha ayarla
end

-- Öğeler ekleniyor
addItem( "Bir şeyler öğren" )
addItem( "Bir şeyler yap" )
addItem( "Bir şeyler üret" )
addItem( "Bir şeyler yarat" )
addItem( "Bir şeyler oyna" )
addItem( "Bir şeyler test et" )
addItem( "Test amacıyla gerçekten uzun bir madde yaz" )
addItem( "Bir şeyler kır" )
addItem( "Bir şeyler yeniden inşa et" )
addItem( "Bir şeyler yayınla" )
```

**Çıktı:** ![](https://gmod.tr/api/uploads/wiki/fd401edd09e2448a3b17.gif)

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