İçindekiler

Liste Görünümü

DiaListView, formlarda kullanıcıların satırlar halinde veri görüntüleyebileceği ve seçim yapabileceği çok kolonlu bir liste nesnesidir. Seçim listeleri, basit tablo görünümleri, detay listeleri gibi yapılarda kullanılır. Kolon başlıkları tanımlanabilir; veri liste, dict listesi veya JSON string olarak atanabilir. Düzenlenebilir tablodan farklı olarak satır ekleme/silme yoktur; veri tamamen setValue ile doldurulur.

Özellikler

Adı Default Değerleri Amacı
🆔 Nesne ID diaListView_1 Örn: urunListesi Nesneye atanacak benzersiz kimliktir. Süreç tasarımında ve kod tarafında bu ID üzerinden erişim sağlanır.
🏷️ Değer - JSON veri veya boş Listenin başlangıç verisi. “Veri” alanı ile de set edilebilir.
🎨 Arka Plan Rengi ⚪ Beyaz Renk seçici Liste arka plan rengini belirler.
✒️ Yazı Rengi ⚫ Siyah Renk seçici Hücre metin rengini belirler.
🔤 Font Helvetica Sistem fontları Liste yazı tipografisini belirler.
🔠 Font Boyu 12 pt Sayısal değer Yazı boyutunu ayarlar.
🔡 Font Tipi Normal Koyu, İtalik, Altı Çizgili, Üstü Çizgili Metin stilini belirler.
📋 Kolonlar - Liste (detay aşağıda) Liste kolon başlıklarının tanımı. Her kolon için alan adı / başlık tanımlanır.
📄 Veri - JSON veya liste Tablonun başlangıç verisi. “Değer” ile aynı mantıkta; liste, dict listesi veya JSON string.
💬 İpucu - Serbest metin Liste üzerine gelindiğinde görünen açıklama.
👁️ Gösterim Görünür Görünür / Gizli Nesnenin formda görünüp görünmeyeceğini belirler.
🔒 Salt Okunur Hayır Evet / Hayır Liste sadece okunabilir olur; seçim yapılamaz (widget devre dışı).
🎭 Stil - CSS sınıfı Özel CSS sınıfları ile görsel stil uygulanabilir.
🖱️ Aksiyon (Item Clicked) - Olay bağlanabilir Bir satıra tek tıklandığında tetiklenir.
🖱️ Aksiyon (Item Double Clicked) - Olay bağlanabilir Bir satıra çift tıklandığında tetiklenir.
🖱️ Aksiyon (Item Changed) - Olay bağlanabilir Seçili satır değiştiğinde tetiklenir.

Liste Görünümü, kolonlu satırlar halinde veri gösterir; getValue() seçili satırın ilk kolon değerini döndürür.


📋 Kolonlar

Kolonlar özelliği, listenin kolon yapısını tanımlar. “Kolonlar” butonuna tıklanarak açılan dialog üzerinden kolonlar eklenir veya düzenlenir. Kolon tanımı JSON formatındadır; her öğe label veya field içerebilir:


Kolon Alanları

Alan Zorunlu Açıklama
label / field Hayır Kolon başlığında görünen metin. Boşsa kolon yine oluşturulur.
(JSON öğesi) - Her öğe bir kolonu temsil eder; dict ise label veya field, string ise doğrudan başlık kullanılır.

Örnek Kolonlar JSON:

[{"field": "kodu", "label": "Kod"}, {"field": "adi", "label": "Ad"}, {"field": "birim", "label": "Birim"}]


Fonksiyonlar

DiaListView nesnesi için kullanılabilir tüm fonksiyonlar aşağıda kategorize edilmiştir.


📝 Değer İşlemleri

📖 getValue()

🎯 Amaç Seçili satırın ilk kolon değerini döndürür. Seçili satır yoksa None.

📥 Parametre Yok

📤 Dönüş str veya None

secili = diaListView_1.getValue()
if secili:
    print("Seçilen:", secili)

✏️ setValue()

🎯 Amaç Listeye veri atar. Liste temizlenir ve yeni satırlar eklenir.

📥 Parametre value: list (dict veya list/tuple satırlar) veya JSON string

📤 Dönüş Yok

# Dict listesi (kolon sırasına göre değerler)
veriler = [
    {"kodu": "STK001", "adi": "Ürün A", "birim": "AD"},
    {"kodu": "STK002", "adi": "Ürün B", "birim": "KG"}
]
diaListView_1.setValue(veriler)

# Liste satırları
veriler2 = [["STK001", "Ürün A", "AD"], ["STK002", "Ürün B", "KG"]]
diaListView_1.setValue(veriler2)

# JSON string
diaListView_1.setValue('[{"kodu":"1","adi":"Test"}]')

🗑️ clearValue()

🎯 Amaç Listedeki tüm satırları temizler.

📥 Parametre Yok

📤 Dönüş Yok

diaListView_1.clearValue()


🆔 Kimlik ve Stil

Fonksiyon Açıklama
getId() Nesne ID'sini döndürür
setId(id) Nesne ID'sini değiştirir
setBackgroundColor(color) Arka plan rengi
getBackgroundColor() Arka plan rengini okur
setFontColor(color) Yazı rengi
getFontColor() Yazı rengini okur
setFontSize(size) Font boyutu
getFontSize() Font boyutunu okur
setFont(fontName) Font tipi
getFont() Font tipini okur
setBold(statu) Koyu yazı
setItalic(statu) İtalik yazı
setUnderline(statu) Altı çizgili yazı

🖱️ Aksiyonlar (Parametreler)

Item Clicked

Bir satıra tek tıklandığında tetiklenir. item, column parametreleri kullanılabilir. getItemValue(item, column) ile hücre değeri okunur (column >= 0 ise o kolon, -1 ise ilk kolon).

Item Double Clicked

Bir satıra çift tıklandığında tetiklenir. item, column parametreleri ve getItemValue(item, column) kullanılabilir.

Item Changed

Seçili satır değiştiğinde tetiklenir. current, previous parametreleri (yeni ve önceki seçili öğe). getItemValue(item, column=0) ile seçili satırın değeri okunabilir.


🚀 Kullanım Örnekleri

Süreç çıktısından listeyi doldurma

# Süreçten gelen veriyi listeye ata
param = getFormVariable("param")
urunler = param["secenek_urunler"]
if urunler:
    diaListView_1.setValue(urunler)

Aksiyon item changed seçili değeri text alana yazma

seciliKod = getItemValue(item, 1)
txt_SeciliMusteri.setText(seciliKod)

Scriptten değer alarak Liste Görünümünde gösterme

# Liste görünümüne birden fazla veri set et
sayi = deger
diaListView_1.setValue([["Fatura: " + sayi + " adet"], ["Cari: " + cari + " adet"], ["Stok: " + stok + " adet"]])