Genel Bakış

Windows Forms TabControl, ilişkili bir grup sekme sayfasını yönetmek için kullanılan bir denetimdir. Microsoft dokümantasyonunda TabPages özelliğinin kontrol içindeki bireysel sekmeleri barındırdığı ve her sekmenin bir TabPage nesnesi olduğu belirtilmektedir. Sekmeler; birden fazla sayfa, özellik sayfası ve farklı kontrol gruplarının düzenlenmesi için kullanılabilir.

SCADA • TABCONTROL
Genel Bakış
Proses
Alarmlar
Trendler
TABCONTROL'ün temel amacı: Birden fazla SCADA ekranını kullanıcı açısından tek bir düzenli ekran alanında toplamak ve sekme seçimi üzerinden ilgili ekran içeriğine erişim sağlamaktır.

Tek Seviye TAB Yapısı

TABCONTROL içinde birden fazla sekme sayfası bulunabilir. Her sekme sayfasının içine SCADA ekranı ve ilgili kullanıcı kontrolleri yerleştirilebilir.

İç İçe TAB Yok

Bu kullanıcı kontrolü yalnızca 1 seviye kullanılabilir. Bir TABCONTROL sekme sayfasının içinde ikinci bir TABCONTROL veya başka bir TAB yapısı oluşturulmaz. Bu kural, kontrolün tasarımındaki temel yapısal sınırlamadır.

ÇOK ÖNEMLİ: YALNIZCA 1 SEVİYE TAB

TABCONTROL'ün en önemli kullanım kuralı, sekme yapısının tek seviyeli olmasıdır. Amaç; SCADA ekranlarını yatay veya dikey bir sekme grubunda birleştirmek, sekme sayfası içinde ilgili ekranı göstermek ve kullanıcıyı ikinci bir sekme hiyerarşisine yönlendirmemektir.

TABCONTROL
├── TABPAGE • Proses
│ ├── SCADA ekranı
│ └── Kullanıcı kontrolleri
├── TABPAGE • Alarmlar
│ ├── Alarm kontrolleri
│ └── Alarm bilgileri
└── TABPAGE • Trend
├── Grafik kontrolleri
└── Trend bilgileri
Yapısal sınır: Yukarıdaki her TABPAGE bir ekran içeriğini barındırabilir; ancak TABPAGE'in içine yeni bir TABCONTROL yerleştirilerek ikinci bir sekme seviyesi oluşturulamaz. TABCONTROL için desteklenen yapı tek TAB seviyesi şeklindedir.

Sekme Sayfaları ve TABPAGE_COLLECTION

Kontrolün sekme yapısı TABPAGE_COLLECTION[] _TabpageItems koleksiyonu üzerinden tanımlanır. Her koleksiyon öğesi, kullanıcıya gösterilen sekme sayfasının özelliklerini taşıyan TABPAGE_COLLECTION sınıfına karşılık gelir. Windows Forms yaklaşımında da TabControl'ün temel yapısı TabPages koleksiyonu ve TabPage nesneleri üzerinden oluşturulur. citeturn0search1turn0search4

Özellik Kaynak Kodundaki Değer Açıklama
Sekme Sayfası Metni TabpageText = "TEXT" Sekme üzerinde görünen başlığı belirler.
Sekme Sayfası Kenar Stili TabpageBorderStyle = None Sekme sayfasının kenarlık görünümünü belirler.
Sekme Sayfası Rengi TabpageColor = Transparent Sekme sayfasının arka plan rengini belirler.
Sekme Sayfası Arka Plan Resmi TabpageBackgroundImage = "" Sekme sayfası için kullanılacak arka plan görüntüsünü belirtir.
Sekme Sayfası Etiketi TabpageTag = "" Sekme sayfasıyla ilişkilendirilebilecek etiket bilgisini taşır.
Ekran Kimliği ScreenID = "" Sekme sayfasıyla ilişkilendirilen ekran kimliği alanıdır.

Windows Forms tarafında sekme başlığı TabPage.Text ile belirlenebilir; sekmelerin koleksiyondaki sırası da ekranda görünen sekme sırasını etkiler. citeturn0search16turn0search1

Sekme Görünümü

Sekme Görünümü, sekme başlıklarının kullanıcı arayüzünde nasıl çizileceğini belirler. Kaynak kodunda üç seçenek bulunmaktadır.

Seçenekler Kümesi Kaynak Değeri Açıklama
Normal Normal Standart sekme görünümünü kullanır.
Düğmeler Buttons Sekmeleri düğme benzeri bir görünümle sunar.
Düz Düğmeler Flatbuttons Daha düz bir düğme görünümü sağlar.

Sekme Hizalama

Sekme başlıklarının TABCONTROL üzerindeki konumunu belirlemek için Sekme Hizalama kullanılır. Windows Forms TabControl de sekmelerin üst, alt, sol veya sağ tarafta konumlandırılmasını destekler.

Seçenekler Kümesi Kaynak Değeri Kullanım
Üst Top Sekmeler üst bölümde yer alır.
Alt Bottom Sekmeler alt bölümde yer alır.
Sol Left Sekmeler sol tarafta yer alır.
Sağ Right Sekmeler sağ tarafta yer alır.

Sekme Davranışı ve Boyutlandırma

TABCONTROL yalnızca sekmelerin nerede görüneceğini değil, sekme başlıklarının kullanıcı etkileşimine ve kullanılabilir alanın büyüklüğüne nasıl uyum sağlayacağını da belirleyen özellikler içerir.

Özellik Kaynak Değeri Açıklama
Çok Satırlı Multiline = false Sekmelerin gerektiğinde birden fazla satıra yayılmasını belirler.
Hot Track HotTrack = false Fare sekmenin üzerine geldiğinde görsel vurgu uygulanmasını yönetir.
Araç İpuçlarını Göster ShowToolTips = false Sekme üzerinde araç ipucu gösterilip gösterilmeyeceğini belirler.
Boyut Modu SizeMode = Normal Sekmelerin genişlik ve boyutlandırma davranışını belirler.
Sekme Öğesi Boyutu TabItemSize = 75 × 18 Sabit boyut kullanılan durumlarda sekme öğesinin ölçüsünü tanımlar.
Simgeleri Kullan UseIcons = false Sekmelerde simge kullanımını belirler.
Çizim Modu DrawMode = Normal Sekmelerin normal veya kullanıcı çizimi ile oluşturulmasını belirler.
Dolgu Padding = (0, 0) Sekme başlığı içindeki ilave boşluk ölçüsünü belirler.

Windows Forms belgelerinde SizeMode sekmelerin nasıl boyutlandırılacağını, ItemSize ise sekme öğelerinin ölçüsünü belirleyen özellikler olarak tanımlanır. ItemSize değerinin genişliğini değiştirmek için SizeMode değerinin Fixed olması gerektiği de belirtilir. citeturn0search12turn0search15

Seçenekler Kümesi Kaynak Değeri Açıklama
Normal Normal Sekme boyutlandırmasının normal davranışıdır.
Sağa Doğru Doldur Filltoright Sekme satırının kullanılabilir genişliğe doğru doldurulmasını amaçlar.
Sabit Fixed Sekmelerin tanımlanan sabit boyutlara göre oluşturulmasını sağlar.

Genel Özellikler

Aşağıdaki özellikler TABCONTROL kullanıcı kontrolünün temel çalışma ve görsel ayarlarını oluşturur. Kaynak kodundaki başlangıç değerleri özellikle korunmuştur.

Özellik Kaynak Değeri Açıklama
Kontrol Tipi UCType = TABCONTROL Kullanıcı kontrolünün tipini belirtir.
Güncelleme Aralığı UpdateInterval = 1000 Kontrolün güncelleme çevrimini milisaniye cinsinden tanımlar.
Ondalık Hane DecimalPoint = 0 Sayısal gösterim için kullanılan ondalık basamak ayarıdır.
Kontrol Arka Renk UCBackColor = Transparent Kontrolün arka plan rengini belirler.
Kontrol Yazı Rengi UCForeColor = Black Kontrolün yazı rengini belirler.
Kontrol Yazı Tipi UCFont = Times New Roman, 12 Kontrolün varsayılan yazı tipini belirler.
Sekme Etiketi TabTag = 18839686 Kontrolün sekme etiketi alanıdır.
Sekme Sayfası Öğeleri TabpageItems Kontrol altında oluşturulan sekme sayfalarının koleksiyonudur.

Seçenekler Kümeleri

TABCONTROL içinde kullanılan numaralandırılmış seçenekler aşağıdaki Seçenekler Kümeleri ile özetlenebilir. Bu değerler doğrudan verilen kaynak koddaki enum tanımlarından alınmıştır.

Küme Seçenekler
GNTabGorunus Normal • Düğmeler • Düz Düğmeler
GNBasitKonum Üst • Alt • Sol • Sağ
GNBoyutModu Normal • Sağa Doğru Doldur • Sabit
GNCizimModu Normal • Kullanıcı Çizimi

SCADA Ekranlarında Kullanım Alanları

TABCONTROL'ün temel kullanım amacı, aynı çalışma alanına ait farklı ekran içeriklerini sekme düzeni altında toplamaktır. Örneğin aşağıdaki yapı tek seviyeli bir TABCONTROL içinde oluşturulabilir:

Proses

Prosesin ana işletme ekranları ve ilgili kullanıcı kontrolleri.

Alarmlar

Alarm listeleri, alarm göstergeleri ve operatör bilgilendirmeleri.

Trend

Geçmiş ve anlık verilerin grafiksel olarak izlenmesi.

Bakım

Ekipman bakım, durum ve yardımcı işletme ekranları.

Önemli tasarım yaklaşımı: TABCONTROL bir SCADA ekranını başka bir ekranla hiyerarşik olarak iç içe geçirmek için değil, ilgili ekran gruplarını tek sekme seviyesinde düzenlemek için kullanılmalıdır.

Önerilen Yapılandırma Sırası

TABCONTROL oluşturulurken önce sekme yapısının planlanması, ardından sekme sayfalarının ve bu sayfalarda gösterilecek SCADA ekranlarının tanımlanması daha düzenli bir sonuç sağlar.

1 TABCONTROL oluştur
2 Sekme hizalamasını seç
3 Sekme sayfalarını tanımla
4 Ekran kimliklerini ilişkilendir
5 Görünüm ve boyutu ayarla
Son kontrol: Yapılandırma tamamlandığında her sekme sayfasının doğru ekranı gösterdiği ve hiçbir sekme sayfasının içinde ikinci bir TABCONTROL bulunmadığı kontrol edilmelidir.

Teknik Kaynak ve Windows Forms Altyapısı

Windows Forms TabControl, ilişkili sekme sayfalarını yönetmek üzere tasarlanmış bir denetimdir. Microsoft dokümantasyonunda sekmelerin TabPages koleksiyonunda tutulduğu, her sekmenin TabPage nesnesi olduğu ve seçili sekmenin programatik olarak da değiştirilebildiği belirtilmektedir. citeturn0search1turn0search4

Bu kullanıcı kontrolü ise verilen kaynak koda göre bu Windows Forms yaklaşımını SCADA ekranlarının sekme altında birleştirilmesi amacıyla kullanır. Dolayısıyla burada anlatılan özelliklerin kontrolün kendi kaynak kodundaki uygulaması ile Windows Forms altyapısının genel davranışını birbirinden ayırmak önemlidir.

Sonuç

TABCONTROL, çok sayıda SCADA ekranını daha düzenli, anlaşılır ve operatör açısından kolay erişilebilir bir arayüz içinde toplamak için hazırlanmış bir sekme kontrolüdür. Sekme görünümü, hizalama, boyutlandırma, araç ipuçları, simge kullanımı, çizim modu ve sekme sayfası özellikleri sayesinde farklı ekran grupları tek bir kontrol altında düzenlenebilir.

En önemli kural: TABCONTROL yalnızca 1 seviye kullanılmalıdır. Bir TABCONTROL içinde sekme sayfaları bulunabilir; ancak bu sekme sayfalarının içinde ikinci bir TABCONTROL veya iç içe TAB yapısı oluşturulmamalıdır.