# DRGBPicker

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

## Açıklama

DRGBPicker, bir renk tonu seçmek için kullanılabilecek etkileşimli bir paneldir.

Parlaklığı ve doygunluğu kontrol eden bir renk seçici için [DColorCube](https://gmod.tr/wiki/DColorCube) sayfasına bakın.

Ton, doygunluk ve parlaklığı aynı anda kontrol etmeye olanak tanıyan bir renk seçici için [DColorMixer](https://gmod.tr/wiki/DColorMixer) sayfasına bakın.

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

## Ebeveyn

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

## Olaylar

DRGBPicker:[OnChange](https://gmod.tr/wiki/DRGBPicker:OnChange)( [table](https://gmod.tr/wiki/table) col )

İmleç renk seçici üzerinde tıklandığında ve/veya hareket ettirildiğinde çağrılan fonksiyondur. Üzerine yazılması (override) amaçlanmıştır.

## Metotlar

[table](https://gmod.tr/wiki/table), [number](https://gmod.tr/wiki/number), [number](https://gmod.tr/wiki/number) DRGBPicker:[GetPosColor](https://gmod.tr/wiki/DRGBPicker:GetPosColor)( [number](https://gmod.tr/wiki/number) x, [number](https://gmod.tr/wiki/number) y )

Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. Dahili doku üzerinde verilen konumdaki rengi döndürür.

[table](https://gmod.tr/wiki/table) DRGBPicker:[GetRGB](https://gmod.tr/wiki/DRGBPicker:GetRGB)()

Renk seçicide o anda ayarlanmış olan rengi döndürür.

DRGBPicker:[SetRGB](https://gmod.tr/wiki/DRGBPicker:SetRGB)( [table](https://gmod.tr/wiki/table) color )

Renk seçicide saklanan rengi ayarlar. Bu fonksiyonun dahili olarak çağrılması amaçlanmıştır ve renk seçici çizgisinin konumunu güncellemez veya DRGBPicker:OnChange'i çağırmaz

### Örnek

Ebeveyni olduğu arka plan panelinin rengini kontrol eden bir renk seçici oluşturur.

```lua
-- Arka plan paneli
BGPanel = vgui.Create("DPanel")
BGPanel:SetSize(100, 200)
BGPanel:Center()

-- Renk seçici
local color_picker = vgui.Create("DRGBPicker", BGPanel)
color_picker:SetPos(35, 10)
color_picker:SetSize(30, 180)

-- Seçilen renk değiştirildiğinde...
function color_picker:OnChange(col)

	-- Panel arka plan rengini değiştir
	BGPanel:SetBackgroundColor(col)

end
```

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

### Örnek

Bir [DColorCube](https://gmod.tr/wiki/DColorCube)'ün renk tonunu kontrol eden bir DRGBPicker oluşturur. Bu, rengi arka plan paneline, etikete ve kopyala/yapıştır panonuza aktarır.

```lua
-- Arka plan paneli
BGPanel = vgui.Create("DPanel")
BGPanel:SetSize(200, 200)
BGPanel:Center()

-- Renk etiketi
local color_label = Label("Color( 255, 255, 255 )", BGPanel)
color_label:SetPos(40, 160)
color_label:SetSize(150, 20)
color_label:SetHighlight(true)
color_label:SetColor(Color(0, 0, 0))

-- Renk seçici
local color_picker = vgui.Create("DRGBPicker", BGPanel)
color_picker:SetPos(5, 5)
color_picker:SetSize(30, 190)

-- Renk küpü
local color_cube = vgui.Create("DColorCube", BGPanel)
color_cube:SetPos(40, 5)
color_cube:SetSize(155, 155)

-- Seçilen renk değiştirildiğinde...
function color_picker:OnChange(col)

	-- RGB seçicinin renk tonunu ve renk küpünün doygunluğunu ve canlılığını al
	local h = ColorToHSV(col)
	local _, s, v = ColorToHSV(color_cube:GetRGB())

	-- Bunları karıştır ve renk küpünü güncelle
	col = HSVToColor(h, s, v)
	color_cube:SetColor(col)

	-- Son olarak, arka plan rengini ve etiketi güncelle
	UpdateColors(col)

end

function color_cube:OnUserChanged(col)

	-- Arka plan rengini ve etiketi güncelle
	UpdateColors(col)

end

-- Görüntü renklerini, etiketi ve pano metnini günceller
function UpdateColors(col)

	BGPanel:SetBackgroundColor(col)
	color_label:SetText("Color( "..col.r..", "..col.g..", "..col.b.." )")
	color_label:SetColor(Color((255-col.r), (255-col.g), (255-col.b)))
	SetClipboardText(color_label:GetText())

end
```

**Çıktı:** ![](https://gmod.tr/api/uploads/wiki/e39cbec4e2183f0aef51.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/DRGBPicker
