FireMonkey, .NET & Delphi 7 ile 13 sgcUI'nin parçası

sgcNavigation, FireMonkey, .NET ve Delphi 7 ile 13 için aynı gezinti çubuğu

Uygulamanıza dakikalar içinde modern bir gezinti menüsü kazandırın. Tek bir denetim hem kenar çubuğu hem akordeon olur, akıcı bir animasyonla simge rayına daralır, okunmamış sayılar için rozet gösterir ve tamamen klavyeyle kullanılabilir. Açık ve koyu temalar hazır gelir, sekmeli form ise belge sekmelerini bir web tarayıcısı gibi temalı bir başlık çubuğuna yerleştirir. Tek bir model ve arayüzsüz tek bir çizici, çubuğu FireMonkey, WinForms, WPF, Avalonia, Delphi 7 ile 13 arasındaki VCL ve C++ Builder üzerinde çalıştırır; böylece ürününüzün tüm ön yüzleri aynı şekilde gezinir.

FireMonkey, WinForms, WPF, Avalonia, VCLDelphi 7 ile 13C++ Builder 2007 ile 13Ücretsiz .NET Community sürümüsgcUI Standard içinde yer alır
Çalışma Alanı ve İş gruplarında 8 öğeli bir kenar çubuğu, seçili Dashboard ve sağda iki KPI kartı içeren SidebarApp demosu

Bir Uygulama Menüsünün İhtiyaç Duyduğu Her Şey

Bir sayfa listesini, kullanıcılarınızın hemen yönünü bulabileceği bir gezinti yapısına dönüştüren yirmi özellik.

Yerleşim ve modlar

Tek bir denetim, iş uygulamalarının kullandığı iki gezinti stilini ve aralarındaki dar rayı kapsar.

Tek bileşende modern bir uygulama kenar çubuğu

Yerleşim ve modlar

Tek bileşende modern bir uygulama kenar çubuğu

Çoğu iş uygulaması ana formun sol kenarında aynı şeyi ister: alanlara göre gruplanmış, geçerli sayfası açıkça işaretlenmiş bir sayfa listesi. Forma bir TsgcVCLNavigationBar bırakın, sola hizalayın ve öğeleri ekleyin. Grup başlıkları altlarındaki satırları soluk bir renkle adlandırır ve asla seçilmez. Seçili satır vurgu tonlu bir arka plan ve 3 piksellik bir vurgu çubuğu alır, böylece kullanıcılar nerede olduklarını her zaman görür. Üzerine gelme ve basılı durumları, ipuçları ve devre dışı satırlar sizin yerinize çizilir, bu yüzden çubuk ilk çalıştırmada tamamlanmış görünür.

  • Mode := nbmSidebar varsayılan stildir
  • IsGroup bir öğeyi grup başlığına dönüştürür
  • ItemHeight ve GroupHeight satır yüksekliklerini belirler
  • Fare tekerleği uzun listeleri kaydırır, ScrollIntoView herhangi bir öğeyi görünür kılar
  • Arapça ve İbranice için sağdan sola: simgeler ve başlıklar yer değiştirir, girinti, ok işaretleri, rozetler ve daralt düğmesi yansıtılır
Yardım konusunu okuyun
Tek özellikle akordeona geçin

Yerleşim ve modlar

Tek özellikle akordeona geçin

Ayar ekranları ve yönetim konsolları genellikle ekrana sığandan fazla bölüme sahiptir. Mode değerini nbmAccordion yapın; her grup başlığı, altındaki öğeleri açıp kapatan bir bölüme dönüşür, sağda bir ok ve girintili alt öğelerle. Varsayılan olarak aynı anda yalnızca bir grup açıktır, bu da uzun bir menüyü kısa tutar. Kullanıcıların aynı anda birkaç bölümü açık tutması gerekiyorsa AllowMultiExpand'i ayarlayın. Öğeler, olaylar ve kodunuz aynen kalır. İlk başlıktan önce yerleştirilen öğeler hiçbir gruba ait değildir ve her zaman görünür, bu da bölümlerin üstündeki bir Ana Sayfa veya Dashboard girdisine uygundur.

  • Mode := nbmAccordion tüm çubuğu değiştirir
  • Expanded bir grubu koddan açar veya kapatır
  • AllowMultiExpand birkaç grubun açık kalmasını sağlar
  • Indent alt öğelerin girintisini belirler
Yardım konusunu okuyun

Yerleşim ve modlar

Animasyonlu simge rayına daralma

Geniş kenar çubukları, kullanıcılarınızın görmeye geldiği verinin yerini çalar. Collapsed'i ayarlayın; çubuk genişletilmiş genişliğinden yaklaşık 150 ms içinde dar bir simge rayına katlanır. Rayda yalnızca simgeler çizilir, başlık ipucuna dönüşür, grup başlıkları ayırıcı çizgilere ve rozetler noktalara dönüşür, böylece önemli hiçbir şey kaybolmaz. Çubuk kendi genişliğini ayarlar, yanındaki içerik de alClient ile bunu takip eder. Collapsed özelliğini bir hamburger düğmesine, bir kullanıcı ayarına veya formun genişliğine bağlayın; ray kenar çubuğu ve akordeon modunda aynı şekilde açılıp kapanır.

  • Collapsed iki genişlik arasında geçiş yapar
  • Mantıksal piksel olarak ExpandedWidth (220) ve CollapsedWidth (56)
  • AnimateCollapse animasyonu açar veya kapatır
  • OnCollapsedChange rayın ne zaman açılıp kapandığını bildirir
Yardım konusunu okuyun

Yerleşim ve modlar

Sayfalarınızı seçime göre yönetin

Bir gezinti çubuğu ancak kullanıcının gördüğünü değiştirdiğinde işe yarar. Etkin bir öğeye tıklayın veya dokunun; çubuk onu seçer, OnItemClick'i tetikler ve ardından öğenin OnClick'ini çalıştırır. OnSelectionChange, eşleşen sayfayı göstermek için tek yerdir, örneğin gizli sekmeli bir TPageControl'ün sekmesi; SidebarApp demosu tam olarak böyle kurulmuştur. SelectedIndex geçerli sayfayı koddan okur ve ayarlar. Kullanıcının henüz ulaşamadığı bir öğeyi devre dışı bırakın, nedenini ipucunda açıklayın veya görmemesi gereken roller için gizleyin; seçim mantığı çalışmaya devam eder.

  • SelectedIndex kullanıcının seçtiği sayfadır
  • OnSelectionChange sayfayı veya frame'i değiştirir
  • Çubukta OnItemClick, her öğede OnClick
  • Her öğe için Enabled, Hint ve Visible
Yardım konusunu okuyun

Gezinti yapısı

Aramalı çok düzeyli bir ağaç, belge sekmeleri, bir breadcrumb ve bir komut paleti; hepsi çubukla aynı çerçeveden bağımsız model üzerinde çalışır.

Solda Mail, Contacts, Calendar ve Settings içeren aramalı bir ağaç, Work sekmesi etkin dört sekme ve sayfanın üstünde Mail, Folders, Work breadcrumb'ı bulunan NavigationShellFMX demosu

Gezinti yapısı

Aramalı çok düzeyli bir ağaç

Büyük uygulamalar düz bir sayfa listesine sığmaz. Mode değerini nbmTree yapın, çubuk istediğiniz kadar düzeye sahip bir ağaca dönüşür: öğeler düz bir koleksiyon olarak kalır ve bir öğenin Depth değeri düzeyini belirler; bu yüzden çubuğu dolduran kod neredeyse değişmez. Her düzey girintilidir ve her üst öğe daraltılabilir. ShowSearch özelliğini açtığınızda öğelerin üstündeki bir arama satırı, kullanıcı yazarken ağacı süzer, her eşleşmenin üst öğelerini açık tutar ve eşleşen karakterleri vurgular. Bulanık eşleştirme, 'stg' yazıldığında 'Settings' öğesini bulur. Ağaç modu ve arama tüm sürümlerin parçasıdır.

  • Mode := nbmTree ve öğe başına Depth
  • ExpandAll, CollapseAll ve Expand(aIndex, aRecursive)
  • FilterMode değeri nfmContains veya nfmFuzzy olan Filter
  • ShowSearch arama satırını çizer, Esc onu temizler
  • Sağ ve Sol ok açar ve daraltır, * bir dalın tamamını açar
Yardım konusunu okuyun

Gezinti yapısı

Açık belgeler için sekmeler

Belge tarzı uygulamalar açık sayfalarını sekmeler olarak gösterir. TsgcFMXNavigationTabs, TsgcVCLNavigationTabs ve WinForms, WPF ile Avalonia şeritleri; simge, başlık, kapatma düğmesi ve değiştirildi noktası olan sekmelerin yanı sıra bir yeni sekme düğmesi ve tüm sekmelerin listesini çizer. Sekmeler sığmadığında TabSizing onları küçültür ya da kaydırma düğmeleri görünür. Bir sekmenin Control özelliği, sekme etkinken şeridin gösterdiği sayfadır. Kayıtlı sürümde kullanıcı sekmeleri başka bir yere sürükler, yerinde kalması gerekenleri sabitler ve bir sekmeyi şeridin dışına sürükleyerek kendi penceresinde açar; SaveLayout düzeni bir sonraki çalıştırmaya kadar saklar.

  • Sekme başına Tabs.AddTab, ActiveIndex ve Control
  • TabSizing, CloseButtons, ShowNewButton, ShowListButton
  • Ctrl+Tab, orta tıkla kapatma, OnTabClose kapatmayı reddedebilir
  • Yalnızca Kayıtlı sürükleyerek yeniden sıralama, Pinned sekmeler, OnTabTearOff, SaveLayout ve LoadLayout
Yardım konusunu okuyun Yeniden sıralama, sabitlenmiş sekmeler ve ayırma

Gezinti yapısı

Ağacı izleyen bir breadcrumb

Derin ağaçlar, nerede olduğunuzu görmenin ve yukarı atlamanın bir yolunu gerektirir. Breadcrumb yolu bir segment satırı olarak gösterir, örneğin Mail, Folders, Work. Bir segmente tıklamak oraya geri döndürür, segmentin ardındaki ok ise başka bir yere gitmek için alt öğelerini listeler. Onu bir gezinti çubuğuna bağlayın, seçili öğeyi izlesin ya da Path veya Segments üzerinden kendiniz doldurun. Yol çok uzun olduğunda ilk segmentler bir taşma düğmesinde toplanır. Kayıtlı sürümde boş alana tıklamak, F4 veya Ctrl+L, breadcrumb'ı tam yolu içeren bir düzenleme alanına çevirir; tıpkı bir dosya yöneticisinin adres çubuğu gibi.

  • NavigationBar, breadcrumb'ı bir çubuğa bağlar
  • Kendi Path, PathDelimiter ve OnGetChildren değerleriniz
  • OnSegmentClick ve AutoTruncate
  • Yalnızca Kayıtlı OnPathEdit ile düzenleme modu
Yardım konusunu okuyun

Gezinti yapısı Yalnızca Kayıtlı

Her komut için bir komut paleti

İleri düzey kullanıcılar menülerde gezinmek yerine yazmayı tercih eder. Ctrl+Shift+P tuşlarına basın, komut paleti pencerenin üstünde açılır: birkaç harf yazın, her komutu bulanık eşleştirmeyle sıralar; böylece 'tgsb', 'Toggle sidebar' komutunu bulur. Eşleşen karakterler vurgulanır, kategori veya yol soluk bir renkle, kısayol ise sağda gösterilir. Sorgu boşken önce son kullanılan komutlar görünür. Palet kendi komutlarını ve eklediğiniz tüm komut kaynaklarını listeler: bir gezinti çubuğunun öğeleri, bir şerit veya araç çubuğunun düğmeleri (Delphi), bir eylem listesinin eylemleri ya da kendi kaynağınız.

  • Kategori, anahtar sözcükler ve kısayol metniyle Commands.AddCommand
  • Bir çubuk, şerit, araç çubuğu veya eylem listesi için Sources.AddSource
  • SaveRecent ve LoadRecent son kullanılanlar listesini saklar
  • .NET'te komutlarda ICommand

FireMonkey, VCL, WinForms, WPF ve Avalonia için Kayıtlı sürüm. IsgcUICommandSource arayüzü tüm sürümlerin parçasıdır.

Yardım konusunu okuyun Komut kaynakları

Gezinti yapısı

Sekmelerin başlık çubuğunda olduğu bir sekmeli form

Tarayıcılar, terminaller ve modern düzenleyiciler sekmelerini pencere başlığına koyar; böylece belgeler ekranın tüm yüksekliğini kullanır. Sekmeli form uygulamanız için aynısını yapar. Onu formun üzerine bırakın ve sekme şeridine bağlayın: sgcUI yerel başlığı kaldırır ve pencere simgesi, sekmeler, yeni sekme düğmesi ile simge durumuna küçült, ekranı kapla ve kapat düğmeleri olan temalı bir başlık çubuğu çizer. Başlık çubuğu uygulamanın sgcUI temasını izler, Classic veya Fluent, açık veya koyu. Pencere gölgesini, yeniden boyutlandırma kenarlıklarını ve ekranı kaplama davranışını korur; işaretçi ekranı kapla düğmesinin üzerinde durduğunda Windows 11 yakalama düzenlerini gösterir. Son sekmenin sağındaki boş alan pencereyi sürükler. Kayıtlı sürümde kullanıcı bir sekmeyi şeritten yeni bir pencereye sürükler ve bir web tarayıcısı gibi başka bir pencerenin başlık çubuğuna bırakır.

  • Delphi ve C++ Builder'da TsgcVCLNavigationTabbedForm ve TsgcFMXNavigationTabbedForm, .NET'te TsgcWinFormsNavigationTabbedForm, TsgcWpfNavigationTabbedWindow ve TsgcAvaloniaNavigationTabbedWindow
  • Tabs sekme şeridini bağlar. Delphi'de Notebook, bir notebook'un şeridini başlık çubuğuna taşır, sayfalar notebook'ta kalır
  • Boş şeritte çift tıklama pencereyi büyütür, sağ tıklama sistem menüsünü gösterir
  • WPF ve Avalonia'da penceredeki Tabs ek özelliği kurulumu XAML'den yapar
  • Yalnızca Kayıtlı ayırma: TearOffMode, ayrılan sekmeyi işaretçinin altındaki pencereye taşır, ttmNewForm ise onu OnCreateTearOffForm ile işaretçiyi izleyen yeni bir pencerede açar

Sekmeli form, Community dahil her sürümde bulunur. Ayırma, sekmelerin ayırması gibi Kayıtlı sürümdedir. Temalı çerçeve masaüstü bileşimli Windows gerektirir ve FireMonkey'de yalnızca Windows'ta uygulanır: macOS, Linux, iOS ve Android'de yerel başlık çubuğu kalır.

Yardım konusunu okuyun Pencere çerçevesi .NET sekmeli formu

Yerleştirme yöneticisi

IDE tarzı bir çalışma alanı: her kenara yerleştirilmiş, otomatik gizlenen veya yüzen araç panelleri, ortada sekmeli bir belge alanı ve JSON olarak kaydedilen bir düzen.

Solda sekmeli Explorer ve Search, otomatik gizlenen bir Toolbox şeridi, dört belge sekmesi, sağda Properties ve altta Output içeren yerleştirme alanı; Output sürüklenirken belgelerin sağ yarısında bırakma kılavuzları ve önizleme dikdörtgeni görünür

Yerleştirme yöneticisi Yalnızca Kayıtlı

Panelleri bırakma kılavuzlarına sürükleyin

Çok sayıda araç penceresi olan uygulamalar, kullanıcının düzenleyebileceği bir çalışma alanına ihtiyaç duyar. TsgcVCLDockManager, TsgcFMXDockManager, TsgcWinFormsDockManager, TsgcWpfDockManager ve TsgcAvaloniaDockManager araç panellerini formun dört kenarına, bölücülerle iç içe bölmeler halinde ve sekmeli gruplar halinde yerleştirir. Kullanıcı bir başlığı veya sekmeyi sürükler ve bırakma kılavuzları nereye konabileceğini gösterir: işaretçinin altındaki gruptaki bir pusula o grubu bir kenardan böler veya paneli içine sekme olarak ekler, kenar kılavuzları paneli tüm alanın bir kenarına yerleştirir ve vurgu renginde bir önizleme dikdörtgeni panelin kaplayacağı yeri gösterir. Esc sürüklemeyi iptal eder. Avalonia yerleştirme sayfası TsgcAvaloniaDockManager'ı XAML ve C# ile gösterir.

  • Panels.Add ile Name, Caption, Placement ve DockSize, kendi denetiminiz Control olarak
  • Kodda DockPanel, ClosePanel, ShowPanel ve ActivatePanel
  • OnPanelDock bir yerleştirmeyi, yüzdürmeyi veya otomatik gizleme değişikliğini reddedebilir
  • Her başlıkta kapatma, sabitleme, büyütme ve menü düğmeleri
Yardım konusunu okuyun Sürükle ve bırak

Yerleştirme yöneticisi Yalnızca Kayıtlı

Panelleri kenar şeritlerine otomatik gizleyin

Yalnızca ara sıra gereken araç panelleri sürekli yer kaplamamalıdır. Bir başlığın sabitle düğmesi grubunu otomatik gizler: paneller formun yanındaki ince bir şeritte sekme olur, bir sekmenin üzerine gelmek veya tıklamak paneli içeriğin üzerine kaydırarak açar. Kullanıcı başka yerde çalışınca geri kayar ve açılır panelin sabitle düğmesi grubu eski kenarına ve eski boyutuna yeniden yerleştirir. iOS ve Android'de dokunmak paneli açar.

  • Kodda Model.SetAutoHide(aPanel, True)
  • AutoHideDelay üzerine gelme gecikmesini belirler, varsayılan 400 ms
  • Panel başına CanAutoHide, belgeler hiçbir zaman otomatik gizlenmez
  • Alt+F7 ve komut paleti otomatik gizlenen bir panelin açılır panelini açar
Yardım konusunu okuyun

Yerleştirme yöneticisi Yalnızca Kayıtlı

Masaüstünde yüzen pencereler

Kılavuzlardan uzağa bırakılan bir panel, kullanıcının başka bir yere veya başka bir monitöre taşıyabileceği kendi penceresinde yüzer. Yüzen pencere yerleştirme alanı gibi bir düzen tutar, bu yüzden ona başka paneller yan yana veya sekme olarak yerleştirilebilir ve başlığına çift tıklamak onu yeniden yerleştirir. Yüzen pencereler forma ait, görev çubuğunda görünmeyen, çizilmiş bir başlığı ve yeniden boyutlandıran bir kenarlığı olan çerçevesiz araç pencereleridir ve her biri kendi monitörünün ölçeğini kullanır. VCL, WinForms, WPF, Avalonia masaüstü uygulamalarında ve Windows ile macOS üzerinde FireMonkey'de çalışırlar. iOS ve Android'de paneller yüzmez, sürükleme yalnızca kılavuzları gösterir.

  • Kodda FloatPanel(aPanel, aLeft, aTop)
  • Yerleştirme yöneticisinde AllowFloating, panel başına CanFloat
  • Placement := dplFloat bir paneli FloatWidth x FloatHeight boyutunda yüzen olarak başlatır
  • Görünür çalışma alanının dışındaki bir yüzen pencere, düzen yüklenirken alanın içine geri taşınır
Yardım konusunu okuyun

Yerleştirme yöneticisi Yalnızca Kayıtlı

Ortada sekmeli bir belge alanı

Yerleştirme alanının ortası belgeleri tutar: her birinin üstünde bir sekme şeridi olan bir veya daha fazla belge grubu. Şerit gezinti sekmeleri gibi çalışır: sürükleyerek yeniden sıralama, önce sabitlenmiş belgeler, kapatma düğmeleri, değiştirildi noktası, orta tıkla kapatma, Ctrl+Tab ve tüm sekmelerin listesi. Bir belge sekmesini pusulanın yan koluna sürükleyerek alanı yan yana veya üst üste iki belge grubuna bölün, ayırarak yüzdürün veya çift tıklayarak grubunu büyütün. Yeni sekme düğmesi, kodunuzun sonraki belgeyi oluşturduğu OnNewDocument olayını tetikler.

  • Kind := dpkDocument, panel başına Pinned ve Modified ile
  • DocumentTabSizing, DocumentCloseButtons, DocumentShowNewButton ve DocumentShowListButton
  • Ctrl+F6 belgeler arasında dolaşır, OnActiveDocumentChange etkin olanı bildirir
  • OnPanelClose bir belgeyi açık tutabilir
Yardım konusunu okuyun

Yerleştirme yöneticisi Yalnızca Kayıtlı

Düzeni kaydedin ve geri yükleyin

Kullanıcılar panellerini bıraktıkları yerde bulmayı bekler. SaveLayout tüm düzeni kompakt JSON olarak yazar: bölmeleri ve boyutlarını, grupları ve etkin panellerini, her kenarın otomatik gizlenen gruplarını, sınırlarıyla yüzen pencereleri, büyütülmüş grubu ve gizli panelleri. LoadLayout onu bir sonraki başlatmada geri yükler. Metin Delphi ve .NET'te aynıdır, bu yüzden tek bir düzen dosyası ikisine de hizmet eder. Düzenin adını verdiği ama formda henüz bulunmayan bir panel, örneğin açık olan bir belge, OnRestorePanel olayına ulaşır ve kodunuz içeriğini oluşturur veya paneli bırakır.

  • SaveLayout, SaveLayoutToFile ve SaveLayoutToStream
  • LoadLayout, LoadLayoutFromFile ve LoadLayoutFromStream yabancı bir metinde False döndürür ve hiçbir şeyi değiştirmez
  • Çalışma zamanında oluşturulan paneller için OnRestorePanel
  • Panel başına bir "Window" komutu komut paletini bir pencere değiştiriciye dönüştürür

FireMonkey, VCL, WinForms, WPF ve Avalonia için C++ Builder desteğiyle Kayıtlı sürüm. Klavye, UI Automation, sağdan sola, temalar ve yüksek DPI dahildir.

Yardım konusunu okuyun

Bilgi veren öğeler

Satırlar bir başlıktan fazlasını taşır: bir simge, bir sayı ve yazdığınız mantığa bir bağlantı.

Okunmamış sayılar için rozetler

Bilgi veren öğeler

Okunmamış sayılar için rozetler

Kullanıcılar sayfayı açmadan önce dikkat gerektiren bir şey olduğunu görmelidir. Bir öğeye okunmamış sayı ya da Yeni sözcüğü gibi bir Badge verin; çubuk onu satırın sağında vurgu renginde, siyah veya beyaz (hangisi daha okunaklıysa) metinli bir hap olarak çizer. Değer değiştikçe koddan ayarlayın, çubuk kendini yeniden çizer. Daralmış rayda rozet simge üzerinde bir noktaya dönüşür. Rozet düz metin olduğundan aynı özellik, özel çizim kodu olmadan sayıları, kısa etiketleri ve durum sözcüklerini kapsar.

  • Badge öğe başına kısa bir metindir
  • Boş bir Badge hiçbir şey çizmez
  • Hap, tema vurgusunu veya sizin AccentColor değerinizi kullanır
  • Sayıyı açıklamak için Hint ile birleştirin
Yardım konusunu okuyun
Resim listenizden veya bir glif ile simgeler

Bilgi veren öğeler

Resim listenizden veya bir glif ile simgeler

Her satırın bir simge yuvası vardır. Çubuğu zaten kullandığınız resim listesine yöneltin ve öğe başına ImageIndex ayarlayın; maskeli veya 32 bit resimler bir kez dönüştürülür ve liste değişene kadar önbellekte tutulur. Henüz resim listeniz yok mu? Bunun yerine bir Glyph ayarlayın; tema renklerini izleyen bir harf veya kısa bir simgedir, demolar da böyle görünür. Devre dışı bir öğe resmini yüzde 40 saydamlıkla çizer, böylece durum bir bakışta anlaşılır. İkisini karıştırmak sorun değildir: resim dizini olan öğeler resmi gösterir, diğerleri glife döner, böylece simgeleri kademeli olarak ekleyebilirsiniz.

  • Resim listeleri için Images ve ImageIndex
  • Resim olmadan bir harf veya simge için Glyph
  • VCL resimleri kendi boyutunda çizer
  • Delphi XE8'den itibaren FireMonkey resim listeleri
Yardım konusunu okuyun

Bilgi veren öğeler Yalnızca Kayıtlı

Öğeleri TAction'larınıza bağlayın

Bir TActionList üzerine kurulu uygulamalar komutlarını, başlıklarını ve etkinlik kurallarını zaten tek yerde tutar. Bir öğeyi Action özelliği üzerinden herhangi bir VCL veya FireMonkey TAction'a bağlayın; Caption, Enabled, Visible, Hint ve ImageIndex eylemi izler. Tıklama, eylemi çubuk ActionComponent olacak şekilde çalıştırır ve OnUpdate boşta çalışır, böylece eylem devre dışı kalır kalmaz öğe grileşir. .NET'te aynı iş Command ve CommandParameter ile yapılır. Tek bir TActionList formun menüsünü, araç çubuğunu ve klavye kısayollarını yönetebilir.

  • Action bir öğeyi herhangi bir TBasicAction'a bağlar
  • Öğenin OnClick olayı eylemin yerine çalışır
  • SGC_NAVIGATION_ACTIONS altında derlenir
  • .NET: ICommand ile Command ve CommandParameter

Community: eylem yerine öğenin OnClick veya çubuğun OnItemClick olayını atayın.

Yardım konusunu okuyun

Klavye, temalar ve çıktı

Çubuğu yerel hissettiren ve uygulamanızın geri kalanıyla tutarlı kılan ayrıntılar.

Önce klavye ile gezinti

Klavye, temalar ve çıktı

Önce klavye ile gezinti

İleri düzey kullanıcılar sayfaları fareyle değil klavyeyle değiştirir ve erişilebilirlik incelemeleri bunu bekler. Çubuk Tab ile odak alır ve odaklanmış satırı görünür, etkin öğeler üzerinde hareket ettirir: Yukarı ve Aşağı adım atar, Home ve End atlar, Enter veya Boşluk etkinleştirir. Akordeonda Sol bir grubu daraltır, Sağ genişletir. Kesikli odak dikdörtgeni yalnızca klavye kullanılırken görünür ve odak seçili sayfadan ayrı kalır. Aynı tuşlar FireMonkey çubuğunda da CanFocus ile çalışır, böylece masaüstü kullanıcıları her platformda aynı davranışı alır.

  • VCL çubuğu için TabStop varsayılan olarak açıktır
  • Modelin FocusedIndex değeri klavye satırıdır
  • SelectedIndex seçilen sayfa olarak kalır
  • Daralmış rayda ipuçları başlığı gösterir
Yardım konusunu okuyun
Açık, koyu ve vurgu renginiz

Klavye, temalar ve çıktı

Açık, koyu ve vurgu renginiz

Uygulamanın temasını yok sayan bir menü sonradan eklenmiş gibi görünür. Theme; yüzey, kenarlık, metin, grup başlığı, üzerine gelme ve vurgu renklerini paylaşılan sgcUICore token'larından ayarlar, böylece aynı Theme'e sahip bir çubuk ile bir sgcDashboard birebir uyum sağlar. AccentColor, seçim çubuğu, odak dikdörtgeni ve rozetler için vurguyu marka renginizle değiştirir. Bir dashboard kutucuğunda barındırılan çubuk, dashboard'un temasını kendiliğinden izler. Temayı çalışma zamanında değiştirin, çubuk anında yeniden çizilir; ayarlar sayfanızdaki bir koyu mod anahtarı için hazırdır.

  • Theme: utDefault (varsayılan, uygulama temasını izler), utLight veya utDark
  • AccentColor $AARRGGBB değeri olarak, 0 tema vurgusunu korur
  • Her sgcUI ürünüyle aynı token'lar
  • Dashboard kutucukları temalarını çubuğa iletir
Yardım konusunu okuyun
Çubuğu pencere olmadan çizin

Klavye, temalar ve çıktı

Çubuğu pencere olmadan çizin

Dokümantasyon, görsel testler ve web arka uçları bazen menünün kendisine değil resmine ihtiyaç duyar. sgcNavigation_Render içindeki çizici, bir TsgcNavigationModel'i pencere, VCL veya FireMonkey olmadan çizer; böylece bir konsol programı, bir servis veya bir sunucu aynı çubuğu PNG veya SVG olarak üretir. Birim Linux64 dahil her platformda derlenir ve ölçek parametresi yüksek DPI ekranlar için net resimler verir. Resim listenizi çiziciye verin, dışa aktarılan resim çalışan uygulamayla aynı simgeleri gösterir.

  • sgcNavigationSaveToPNG bir PNG dosyası veya akışı yazar
  • sgcNavigationSaveToSVG aynı çubuğu SVG olarak yazar
  • sgcNavigationRender herhangi bir sgcUICore canvas'ına çizer
  • Mantıksal piksel olarak genişlik ve yükseklik, çarpı ölçek
Yardım konusunu okuyun

sgcNavigation iş başında

sgcUI paket demolarında sgcNavigation: yerleşik simüle verilerle çevrimdışı çalışan eksiksiz uygulamalar.

sgcNavigation ile Kimler Geliştirme Yapıyor

ERP ve yönetim uygulamaları için modern bir kabuk

Elinizde onlarca mevcut form ve bunları hâlâ bir menü çubuğundan açan bir ana pencere var. Soluna bir kenar çubuğu koyun, her alan için bir öğe ekleyin ve OnSelectionChange ile gizli sekmeli bir TPageControl'ün sekmelerini değiştirin. Rozetler bekleyen siparişleri veya okunmamış mesajları gösterir, simge rayı da formlara alanlarını geri verir. Desenin bir sgcDashboard sayfasıyla çalıştığını görmek için SidebarApp'i çalıştırın.

  • Kenar çubuğu modu
  • Rozetler
  • Simge rayına daralma
SidebarApp demosunu çalıştırın

Ayarlar ve yönetim konsolları

Yapılandırma ekranları onlarca sayfayı Satışlar, Envanter ve Yönetim gibi birkaç başlık altında toplar. Akordeon aynı anda bir bölümü, AllowMultiExpand ile ise birkaçını açık tutar; Eylem bağlantıları da TActionList'inizin komutlarını ve etkinlik kurallarını yeniden kullanır. Klavye kullanıcıları bölümler arasında ok tuşlarıyla gezinir. Accordion demosu üç grubu, bir genişletme anahtarını ve bir tıklama günlüğünü gösterir.

  • Akordeon modu
  • Eylem bağlantıları
  • Klavye ile gezinti
Accordion demosunu çalıştırın

Her platformda aynı gezinti

Windows, macOS, iOS ve Android üzerinde çalışan bir FireMonkey uygulamasının her birinde farklı bir menüye ihtiyaç duymaması gerekir. TsgcFMXNavigationBar, VCL çubuğuyla aynı öğelere, modlara ve olaylara sahiptir; WinForms, WPF ve Avalonia için .NET çubukları da aynı adları izler. Bir Delphi masaüstü uygulaması ve bir .NET aracı sunan ekipler tek bir zihinsel modeli korur. SidebarFMX, kenar çubuğu demosunun FireMonkey sürümüdür.

  • FireMonkey çubuğu
  • Temalar
  • .NET çubukları
SidebarFMX demosunu çalıştırın

Birkaç Satırda Bir Gezinti Çubuğu

FireMonkey, C#, Delphi VCL ve C++ Builder'da aynı API: gruplar, bir rozet, devre dışı bir öğe ve bir Collapse düğmesi olan akordeon çubuğu. FireMonkey ve C# sekmeleri bir sekme şeridi ve bir komut paleti ekler.

uses
  FMX.Types, FMX.Controls, FMX.Forms, FMX.StdCtrls,
  sgcUICore_Theme, sgcNavigation_Model, sgcNavigation_FMX;

procedure TMainForm.CreateNavigation;
begin
  // an accordion bar on the left, dark theme, several groups open at once
  FNav := TsgcFMXNavigationBar.Create(Self);
  FNav.Parent := Self;
  FNav.Align := TAlignLayout.Left;
  FNav.Mode := nbmAccordion;
  FNav.AllowMultiExpand := True;
  FNav.Theme := utDark;
  // a group header (third parameter True), then the items under it
  FNav.Items.AddItem('Sales', '', True);
  FNav.Items.AddItem('Orders', 'O');
  FNav.Items.AddItem('Invoices', 'I').Badge := '3';
  FNav.Items.AddItem('Admin', '', True);
  FNav.Items.AddItem('Users', 'U').Hint := 'Manage the users';
  FNav.Items.AddItem('Billing', 'B').Enabled := False;
  FNav.SelectedIndex := 1;
  FNav.OnItemClick := NavItemClick;
  FNav.OnSelectionChange := NavSelectionChange;
  // a Collapse button folds the bar into an icon rail with an animation
  FNav.AnimateCollapse := True;
  FButton.Text := 'Collapse';
  FButton.OnClick := ButtonClick;
end;

procedure TMainForm.NavItemClick(Sender: TObject; aItem: TsgcNavigationItem);
begin
  Caption := 'Clicked: ' + aItem.Caption;
end;

procedure TMainForm.NavSelectionChange(Sender: TObject);
begin
  FPage.Text := FNav.Items[FNav.SelectedIndex].Caption + ' page';
end;

procedure TMainForm.ButtonClick(Sender: TObject);
begin
  FNav.Collapsed := not FNav.Collapsed;
end;
uses
  FMX.Types, FMX.Controls,
  sgcNavigation_Tabs, sgcNavigation_Tabs_FMX,
  sgcNavigation_Palette, sgcNavigation_Palette_FMX;

procedure TMainForm.CreateShell;
var
  oTab: TsgcNavigationTab;
  oCommand: TsgcCommandPaletteCommand;
begin
  // a tab strip on top: every tab shows its own page
  FTabs := TsgcFMXNavigationTabs.Create(Self);
  FTabs.Parent := FContent;
  FTabs.Align := TAlignLayout.Top;
  oTab := FTabs.Tabs.AddTab('Orders');
  oTab.Control := FOrdersPage;
  FTabs.ActiveIndex := oTab.Index;
  // the command palette (Registered edition), Ctrl+Shift+P opens it
  FPalette := TsgcFMXCommandPalette.Create(Self);
  oCommand := FPalette.Commands.AddCommand('Toggle sidebar', 'View', 'Ctrl+B');
  oCommand.OnExecute := ButtonClick;
  // every item of the bar becomes a "Go to" command
  FPalette.Sources.AddSource(FNav);
end;
procedure TMainForm.CreateNavigation;
var
  oItem: TsgcNavigationItem;
begin
  // an accordion bar on the left, dark theme, several groups open at once
  FNav := TsgcVCLNavigationBar.Create(Self);
  FNav.Parent := Self;
  FNav.Align := alLeft;
  FNav.Mode := nbmAccordion;
  FNav.AllowMultiExpand := True;
  FNav.Theme := utDark;
  // a group header (third parameter True), then the items under it
  FNav.Items.AddItem('Sales', '', True);
  FNav.Items.AddItem('Orders', 'O');
  FNav.Items.AddItem('Invoices', 'I').Badge := '3';
  FNav.Items.AddItem('Admin', '', True);
  oItem := FNav.Items.AddItem('Users', 'U');
  oItem.Hint := 'Manage the users';
  oItem := FNav.Items.AddItem('Billing', 'B');
  oItem.Enabled := False;
  FNav.SelectedIndex := 1;
  FNav.OnItemClick := NavItemClick;
  FNav.OnSelectionChange := NavSelectionChange;
  // a Collapse button folds the bar into an icon rail with an animation
  FNav.AnimateCollapse := True;
  FButton.Caption := 'Collapse';
  FButton.OnClick := ButtonClick;
end;

procedure TMainForm.NavItemClick(Sender: TObject; aItem: TsgcNavigationItem);
begin
  Caption := 'Clicked: ' + aItem.Caption;
end;

procedure TMainForm.NavSelectionChange(Sender: TObject);
begin
  FPanel.Caption := FNav.Items[FNav.SelectedIndex].Caption + ' page';
end;

procedure TMainForm.ButtonClick(Sender: TObject);
begin
  FNav.Collapsed := not FNav.Collapsed;
end;

Tarayıcı tarzı bir pencere: TsgcVCLNavigationTabbedForm sekme şeridini temalı bir başlık çubuğuna taşır.

uses
  Classes, Controls, Forms,
  sgcNavigation_Tabs, sgcNavigation_Tabs_VCL, sgcNavigation_TabbedForm_VCL;

procedure TMainForm.CreateTabbedForm;
begin
  // a browser style strip with close buttons and a new tab button
  FTabs := TsgcVCLNavigationTabs.Create(Self);
  FTabs.Parent := Self;
  FTabs.ShowNewButton := True;
  FTabs.CloseButtons := tcbAlways;
  FTabs.Tabs.AddTab('Home');
  FTabs.Tabs.AddTab('Orders');
  FTabs.ActiveIndex := 0;
  // the window frame: the strip moves into the themed title bar
  FTabbedForm := TsgcVCLNavigationTabbedForm.Create(Self);
  FTabbedForm.Tabs := FTabs;
  // Registered edition: a tab dropped on another tabbed window moves there
  FTabbedForm.TearOffMode := ttmEvent;
end;
#include <vcl.h>
#include <Vcl.ExtCtrls.hpp>
#include "sgcUICore_Theme.hpp"
#include "sgcNavigation_Model.hpp"
#include "sgcNavigation_VCL.hpp"

class TNavHandler : public TObject
{
public:
  TsgcVCLNavigationBar *Nav;
  TPanel *Content;
  void __fastcall ItemClick(TObject *Sender, TsgcNavigationItem *aItem);
  void __fastcall SelectionChange(TObject *Sender);
  void __fastcall CollapseClick(TObject *Sender);
};

void __fastcall TNavHandler::ItemClick(TObject *Sender, TsgcNavigationItem *aItem)
{
  Content->Caption = "Clicked: " + aItem->Caption;
}

void __fastcall TNavHandler::SelectionChange(TObject *Sender)
{
  Content->Caption = Nav->Items->Items[Nav->SelectedIndex]->Caption + " page";
}

void __fastcall TNavHandler::CollapseClick(TObject *Sender)
{
  Nav->Collapsed = !Nav->Collapsed;   // animated fold into an icon rail
}

void __fastcall CreateNavigation(TForm *Form, TNavHandler *Handler)
{
  // an accordion bar on the left, dark theme, several groups open at once
  TsgcVCLNavigationBar *Nav = new TsgcVCLNavigationBar(Form);
  Nav->Parent = Form;
  Nav->Align = alLeft;
  Nav->Mode = nbmAccordion;
  Nav->AllowMultiExpand = true;
  Nav->AnimateCollapse = true;
  Nav->Theme = utDark;
  // a group header (third parameter true), then the items under it
  Nav->Items->AddItem("Sales", "", true);
  Nav->Items->AddItem("Orders", "O", false);
  Nav->Items->AddItem("Invoices", "I", false)->Badge = "3";
  Nav->Items->AddItem("Admin", "", true);
  Nav->Items->AddItem("Users", "U", false)->Hint = "Manage the users";
  Nav->Items->AddItem("Billing", "B", false)->Enabled = false;
  Nav->SelectedIndex = 1;
  TPanel *Content = new TPanel(Form);
  Content->Parent = Form;
  Content->Align = alClient;
  Handler->Nav = Nav;
  Handler->Content = Content;
  Nav->OnItemClick = Handler->ItemClick;
  Nav->OnSelectionChange = Handler->SelectionChange;
  TButton *Button = new TButton(Form);
  Button->Parent = Content;
  Button->Caption = "Collapse";
  Button->OnClick = Handler->CollapseClick;
}
using System;
using System.Windows.Forms;
using esegece.sgcUICore;
using esegece.sgcNavigation;

internal class MainForm : Form
{
    private readonly TsgcWinFormsNavigationBar Nav = new TsgcWinFormsNavigationBar();
    private readonly Label lblPage = new Label { Dock = DockStyle.Fill };
    private readonly Button btnCollapse = new Button { Text = "Collapse", Dock = DockStyle.Top };

    public MainForm()
    {
        // an accordion bar on the left, dark theme, several groups open at once
        Nav.Dock = DockStyle.Left;
        Nav.Mode = TsgcNavigationMode.nbmAccordion;
        Nav.AllowMultiExpand = true;
        Nav.AnimateCollapse = true;
        Nav.Theme = TsgcUITheme.utDark;
        // a group header (third parameter true), then the items under it
        Nav.Items.AddItem("Sales", "", true);
        Nav.Items.AddItem("Orders", "O");
        Nav.Items.AddItem("Invoices", "I").Badge = "3";
        Nav.Items.AddItem("Admin", "", true);
        Nav.Items.AddItem("Users", "U").Hint = "Manage the users";
        Nav.Items.AddItem("Billing", "B").Enabled = false;
        Nav.SelectedIndex = 1;
        Nav.OnItemClick = (sender, item) => Text = "Clicked: " + item.Caption;
        Nav.OnSelectionChange = sender => lblPage.Text = Nav.Items[Nav.SelectedIndex].Caption + " page";
        // the Collapse button folds the bar into an icon rail with an animation
        btnCollapse.Click += (s, e) => Nav.Collapsed = !Nav.Collapsed;
        Controls.Add(lblPage);
        Controls.Add(btnCollapse);
        Controls.Add(Nav);
    }
}
// tabs and a command palette on the same form
private readonly TsgcWinFormsNavigationTabs Tabs = new TsgcWinFormsNavigationTabs();
private readonly TsgcWinFormsCommandPalette Palette = new TsgcWinFormsCommandPalette();

private void CreateShell(Control aOrdersPage)
{
    // a tab strip on top: every tab shows its own page
    Tabs.Dock = DockStyle.Top;
    TsgcNavigationTab oTab = Tabs.Tabs.AddTab("Orders");
    oTab.Control = aOrdersPage;
    Tabs.ActiveIndex = oTab.Index;
    Controls.Add(Tabs);
    // the command palette (Registered edition), Ctrl+Shift+P on this form opens it
    Palette.OwnerForm = this;
    TsgcCommandPaletteCommand oCommand = Palette.Commands.AddCommand("Toggle sidebar", "View", "Ctrl+B");
    oCommand.OnExecute = sender => Nav.Collapsed = !Nav.Collapsed;
    // every item of the bar becomes a "Go to" command
    Palette.Sources.AddSource(Nav);
}
dotnet add package esegece.sgcNavigation.WinForms

sgcNavigation Demolarını Çalıştırın

NavigationShell ve DockingShell demoları FireMonkey, VCL, WinForms, WPF ve Avalonia için dahildir. Kenar çubuğu demosu FireMonkey için, SidebarApp ve Accordion demoları ise .NET sürümünde WinForms, WPF ve Avalonia projeleri olarak, ayrıca Delphi VCL ve C++ Builder için dahildir.

NavigationShellFMX

Yalnızca Kayıtlı NavigationShellFMX

FireMonkey için eksiksiz bir gezinti yapısı, yalnızca Delphi: solda bir arama satırı olan bir ağaç, her açık sayfa için bir sekme, ağacı izleyen bir breadcrumb ve çubuk öğelerini ile bir eylem listesini listeleyen bir komut paleti (Ctrl+Shift+P). Koyu tema ve sağdan sola düzen anahtarlarını içerir. Paleti kullandığı için Kayıtlı veya deneme sürümü gerektirir.

Yalnızca Kayıtlı NavigationShell

VCL için aynı yapı; üstte, komutları ağaç öğeleri ve bir eylem listesinin eylemleriyle birlikte komut paletinde 'Tab > Group' yoluyla da görünen küçük bir şerit bulunur. Koyu tema ve sağdan sola düzen anahtarlarını içerir.

Yalnızca Kayıtlı .NET için NavigationShell

.NET sürümündeki gezinti yapısı: WinForms için NavigationShell, NavigationShellWpf ve NavigationShellAvalonia; her biri ağaç ve arama, sekmeler, breadcrumb ve komut paleti ile gelir.

DockingShell

Yalnızca Kayıtlı DockingShell ve DockingShellFMX

VCL ve FireMonkey için yerleştirme yöneticisi üzerine kurulu, IDE tarzı bir kabuk: solda Explorer olarak bir gezinti çubuğu ağacı, sağda Properties, altta otomatik gizlenen Output ve ortada sabitlenmiş ve değiştirilmiş sekmeli memo belgeleri. Komut paleti panel başına bir Window komutu listeler, bir tema anahtarı ve bir Reset layout düğmesi dahildir, düzen kapatırken JSON olarak kaydedilir ve bir sonraki başlatmada yüklenir.

Yalnızca Kayıtlı .NET için DockingShell

.NET sürümündeki yerleştirme kabuğu: WinForms için DockingShell, DockingShellWpf ve DockingShellAvalonia; her biri yerleştirilmiş, otomatik gizlenen ve yüzen paneller, belge alanı ve kaydedilmiş düzen ile.

TabbedForm ve TabbedFormFMX

Sekmelerin başlık çubuğunda olduğu, tarayıcı tarzı bir pencere; VCL ve FireMonkey için, C++ Builder ikizleriyle: yeni sekme düğmesi, kapatma düğmeleri ve açık, koyu, Fluent açık ve Fluent koyu seçeneklerinden oluşan bir tema seçici. Bir sekmeyi şeritten sürükleyin, işaretçiyi izleyen yeni bir pencerede açılır; sonra onu başka bir pencerenin başlık çubuğuna bırakın. Ayırma Kayıtlı sürüm gerektirir. .NET sürümünde WinForms için TabbedForm, TabbedFormWpf ve TabbedFormAvalonia olarak gelir.

SidebarFMX

Yalnızca Delphi için, FireMonkey'e yönelik TsgcFMXNavigationBar ile oluşturulmuş kenar çubuğu demosu. VCL sürümüyle aynı öğeler, modlar ve olaylar; Windows, macOS ve mobil hedeflere hazır.

SidebarApp

SidebarApp

Gizli sekmeli bir sayfa denetimini yöneten; simgeli, rozetli, devre dışı bir öğeli, Collapse düğmeli, tema açılır listeli ve bir sgcDashboard KPI sayfalı kenar çubuğu. Uygulama kabuğu desenini baştan sona kanıtlar.

Accordion

Yalnızca Kayıtlı Accordion

Satışlar, Envanter ve Yönetim olmak üzere üç grup, bir AllowMultiExpand anahtarı, Eylem bağlantıları ve bir tıklama günlüğü. Eylem bağlantılarını kullandığı için Kayıtlı veya Deneme sürümü gerekir.

Derlenmiş demolar

Her sgcUI ürününün çalıştırmaya hazır yürütülebilir dosyaları, kurulum gerektirmez.

sgcUI_bin.zip dosyasını indirin →

Getting Started kılavuzu

Delphi (VCL) için beş QuickStart demosu Demos\Navigation\Delphi\00.QuickStart klasöründe yer alır. PDF kılavuzu bunları adım adım anlatır: ilk gezinti çubuğu, kodla oluşturulan bir menü, belge sekmeleri, temalar ve stiller ve küçük bir e-posta istemcisi.

Kılavuzu indirin (PDF, İngilizce) →

sgcNavigation mı, RAD Studio 13.2 VCL denetimleri mi?

RAD Studio 13.2 Florence iki VCL denetimi ekledi: TNavigationView ve TTabView. Uygulamanız yalnızca VCL ise ve 13.2 veya daha yeni bir sürümle derliyorsanız bunlar iyi bir yerleşik seçenektir. sgcNavigation, aynı gezintinin FireMonkey ve .NET'te de çalışması gerektiğinde, eski Delphi sürümleriyle derlediğinizde ve bir breadcrumb, komut paleti ya da aramalı bir ağaca ihtiyaç duyduğunuzda değer katar.

TNavigationView; normal ve kompakt modları, görselleri, çok satırlı metni, kaydırmayı ve sürükleyerek yeniden sıralamayı olan, öğelerini bir çok sayfalı denetime, bir çerçeveye veya bir TCardPanel'e bağlayan dikey bir öğe listesidir. TTabView ise TTabSet'in modern bir çeşididir: sekmeleri formları veya başka denetimleri barındırır, her sekmede bir görsel, çok satırlı metin ve bir kapatma düğmesi, ayrıca bir sekme ekleme düğmesi, tüm sekmelerin açılır listesi ve kaydırma düğmeleri bulunur. İkisi de iyi tasarlanmıştır ve VCL programlama modelini izler; bu yüzden 13.2 ile başlayan yeni bir VCL projesi için denemeye değerler.

sgcNavigation, her ana bilgisayarın arkasında çerçeveden bağımsız tek bir model ve arayüzsüz tek bir çizici tutar. Çubuk ve bu sürümde ona katılan sekmeler, breadcrumb, çok düzeyli ağaç ve komut paleti; FireMonkey, WinForms, WPF, Avalonia ve Delphi 7 ile 13 arasındaki VCL'de aynı şekilde davranır; böylece masaüstü, mobil ve .NET ön yüzü olan bir ürün her yerde aynı şekilde gezinir.

KonusgcNavigationTNavigationView ve TTabView (VCL, RAD Studio 13.2)
ÇerçevelerFireMonkey, WinForms, WPF, Avalonia ve VCLVCL
Delphi ve C++ Builder sürümleriDelphi 7 ile 13 (VCL), Delphi XE6 ile 13 (FireMonkey), C++ Builder 2007 ile 13RAD Studio 13.2 ve sonrası
.NET ana bilgisayarları.NET Framework 4.7.2, .NET 8, 9 ve 10 üzerinde WinForms, WPF ve AvaloniaUygulanamaz, bunlar VCL denetimleridir
Linux'ta arayüzsüz çizimDelphi 10.2'den itibaren Linux64'te PNG ve SVG çıktısı13.2 belgelerinde açıklanmamıştır
Çerçeveler arasında paylaşılan modelDelphi ve .NET'te aynı adlarla çerçeveden bağımsız tek bir model13.2 belgelerinde açıklanmamıştır
BreadcrumbÇubuğun seçili düğümünü izleyebilen breadcrumb çubuğu13.2 belgelerinde açıklanmamıştır
Komut paletiKomutlar, öğeler ve eylemler üzerinde bulanık aramalı, klavye odaklı palet13.2 belgelerinde açıklanmamıştır
Ağaçta aramaHer eşleşmenin üst öğelerini görünür tutan bir arama satırı olan çok düzeyli ağaç13.2 belgelerinde açıklanmamıştır

TNavigationView ve TTabView ayrıntıları Embarcadero'nun RAD Studio 13 Florence Release 2 notlarından alınmıştır.

sgcNavigation Hangi Sürümlerde Yer Alıyor

sgcNavigation, Standard'dan başlayarak her sgcUI sürümünde bulunur ve ayrıca tek başına da satılır. sgcNavigation ayrıca All-Access paketine dahildir.

sgcNavigation tek paket

€149 / geliştirici, tam kaynak kodu, 1 yıl güncelleme.

sgcNavigation satın alın → Fiyatlandırmayı görün →

sgcUI Standard

sgcNavigation, sgcGrid, sgcToolbar ve sgcEditors, €380 fiyatından başlayarak.

Standard sürümüne bakın →

sgcUI Professional

Standard artı sgcCharts, sgcDashboard ve sgcGauges, €529 fiyatından başlayarak.

Professional sürümüne bakın →

sgcUI Enterprise

Tüm 17 sgcUI ürünü, €699 fiyatından başlayarak.

Enterprise sürümüne bakın →

Ücretsiz Community sürümü (NuGet'te esegece.sgcNavigation.Community) ağaç modu ve aramalı çubuğu, temel sekmeleri ve breadcrumb'ı, başlık çubuğunda sekmeler bulunan sekmeli formu ve komut kaynağı arayüzünü içerir. Kayıtlı sürüm komut paletini, sekmeleri yeniden sıralamayı, sabitlenmiş sekmeleri, ayırmayı ve kaydedilmiş sekme düzenini, breadcrumb düzenleme modunu, yerleştirme yöneticisini ve öğelerin Eylem bağlantılarını ekler.

ÖzellikCommunity (ücretsiz)Kayıtlı
Kenar çubuğu ve akordeon modları✓✓
Animasyonlu simge rayına daralma✓✓
Simgeler, glifler ve rozetler✓✓
Klavye ile gezinti✓✓
Açık ve koyu temalar, vurgu rengi✓✓
Arayüzsüz PNG ve SVG çıktısı✓✓
Çok düzeyli ağaç modu ve arama✓✓
Sekmeler: boyutlandırma, kapatma düğmeleri, liste ve yeni sekme düğmeleri, kaydırma, klavye✓✓
Sekmeli form: sekmeler temalı bir başlık çubuğunda✓✓
Breadcrumb: segmentler, oklar, taşma, bir çubuğa bağlama✓✓
Komut kaynakları (IsgcUICommandSource)✓✓
Komut paleti−✓
Sürükleyerek sekme yeniden sıralama, sabitlenmiş sekmeler, ayırma, kaydedilmiş sekme düzeni−✓
Sekmeli formda yeni bir pencereye ayırma−✓
Breadcrumb düzenleme modu−✓
Yerleştirme yöneticisi−✓
Eylem bağlantıları (Delphi) ve Command (.NET)−✓

Desteklenen Framework'ler ve Platformlar

sgcNavigation'daki bileşenler

BileşenHedef
TsgcFMXNavigationBarDelphi ve C++ Builder, FireMonkey (sgcNavigation_FMX)
TsgcWinFormsNavigationBar.NET, WinForms
TsgcWpfNavigationBar.NET, WPF
TsgcAvaloniaNavigationBar.NET, Avalonia
TsgcVCLNavigationBarDelphi ve C++ Builder, VCL (sgcNavigation_VCL)
TsgcFMXNavigationTabs, TsgcFMXNavigationBreadcrumb, TsgcFMXCommandPaletteDelphi ve C++ Builder, FireMonkey (sgcNavigation_Tabs_FMX, sgcNavigation_Palette_FMX)
TsgcWinFormsNavigationTabs, TsgcWpfNavigationTabs, TsgcAvaloniaNavigationTabs.NET, WinForms, WPF ve Avalonia, ilgili Breadcrumb ve CommandPalette sınıflarıyla
TsgcVCLNavigationTabs, TsgcVCLNavigationBreadcrumb, TsgcVCLCommandPaletteDelphi ve C++ Builder, VCL (sgcNavigation_Tabs_VCL, sgcNavigation_Palette_VCL)
TsgcVCLNavigationTabbedForm, TsgcFMXNavigationTabbedFormDelphi ve C++ Builder, VCL ve FireMonkey (sgcNavigation_TabbedForm_VCL, sgcNavigation_TabbedForm_FMX), Windows'ta temalı başlık çubuğu
TsgcWinFormsNavigationTabbedForm, TsgcWpfNavigationTabbedWindow, TsgcAvaloniaNavigationTabbedWindow.NET, WinForms, WPF ve Avalonia
TsgcVCLDockManager, TsgcFMXDockManagerDelphi ve C++ Builder, VCL ve FireMonkey (sgcNavigation_Dock_VCL, sgcNavigation_Dock_FMX), Kayıtlı sürüm
TsgcWinFormsDockManager, TsgcWpfDockManager, TsgcAvaloniaDockManager.NET, WinForms, WPF ve Avalonia, Kayıtlı sürüm
TsgcNavigationItem, TsgcNavigationItems, TsgcNavigationModelFramework'ten bağımsız model (sgcNavigation_Model)
HedefBileşenPlatformlar
Delphi XE6'dan 13'e, FireMonkeyTsgcFMXNavigationBarWindows, macOS, iOS, Android ve Linux (FMXLinux)
.NET Framework 4.7.2, .NET 8, 9 ve 10TsgcWinFormsNavigationBar, WPF ve Avalonia çubuklarıWinForms, WPF ve Avalonia
Delphi 7'den 13'e, VCLTsgcVCLNavigationBarWin32 ve Win64
C++ Builder 2007'den 13'eTsgcVCLNavigationBar, TsgcFMXNavigationBarOluşturulan .hpp başlık dosyaları ve statik kitaplıklar
Delphi 10.2'den 13'e, framework'ten bağımsızModel ve arayüzsüz PNG ve SVG çiziciLinux64, örneğin bir sunucuda çubuk çizmek için

Sık Sorulan Sorular

Uygulamanız yalnızca VCL ise RAD Studio 13.2'nin TNavigationView ve TTabView denetimleri iyi bir yerleşik seçenektir ve onları önermekten memnuniyet duyarız. Aynı gezintinin macOS, iOS, Android veya Linux üzerindeki FireMonkey'de ya da bir WinForms, WPF veya Avalonia uygulamasında da çalışması gerektiğinde, ekibinizin bir kısmı hâlâ eski bir Delphi veya C++ Builder ile derlediğinde ya da kenar çubuğunun üstünde bir breadcrumb, komut paleti veya aramalı çok düzeyli bir ağaç istediğinizde sgcNavigation daha iyi bir seçimdir. Model ve arayüzsüz PNG ve SVG çizici tüm ana bilgisayarlar arasında paylaşılır. Karşılaştırma tablosu için Seçim bölümüne bakın.

Evet, Kayıtlı sürümde. TsgcFMXCommandPalette, TsgcVCLCommandPalette ve WinForms, WPF ile Avalonia paletleri Ctrl+Shift+P ile açılır, kullanıcı yazarken komutları bulanık eşleştirmeyle sıralar ve önce son kullanılan komutları gösterir. Kendi komutlarına ek olarak palet, eklediğiniz tüm komut kaynaklarını listeler: bir gezinti çubuğunun öğeleri, Delphi'de bir şerit veya araç çubuğunun komutları, bir eylem listesinin eylemleri ya da IsgcUICommandSource arayüzü üzerinden kendi kaynağınız. .NET'te bir komut ICommand taşıyabilir. Bkz. komut paleti.

İkisini birden. Mode özelliği aynı denetimde, aynı öğeler ve olaylarla nbmSidebar ile nbmAccordion arasında geçiş yapar; böylece projenin ilerleyen aşamalarında fikir değiştirebilir veya iki stili de kullanıcı tercihi olarak sunabilirsiniz. Her mod ayrıca daralmış simge rayına katlanır.

Evet. OnSelectionChange olayını işleyin ve SelectedIndex ile eşleşen sayfayı gösterin; örneğin gizli sekmeli bir TPageControl'ün sekmesi ya da isteğe bağlı oluşturulan bir frame. SidebarApp demosu tam olarak böyle kurulmuştur ve bir sgcDashboard KPI sayfası barındırır.

Evet. TsgcFMXNavigationBar, Delphi XE6'dan itibaren Windows, macOS, iOS, Android ve Linux'u (FMXLinux) hedefler ve VCL çubuğuyla aynı öğelere, modlara ve olaylara sahiptir. FireMonkey resim listeleri Delphi XE8 veya üstünü gerektirir; eski sürümler her öğenin Glyph değerini kullanır.

Komut paleti, sürükleyerek sekme yeniden sıralama, sabitlenmiş sekmeler ve ayırma, breadcrumb düzenleme modu, yerleştirme yöneticisi ve öğelerin Eylem bağlantıları, yani .NET'te Command ve CommandParameter özellikleri. Eylem bağlantıları yerine öğenin OnClick veya çubuğun OnItemClick olayını kullanın. Ağaç ve arama, sekmeler, simge rayı, rozetler, temalar ve arayüzsüz çıktı dahil diğer tüm özellikler Community'de vardır. Bkz. Sürümler.

Hayır. .NET portunda tasarımcı fiilleri veya koleksiyon düzenleyicisi yoktur, bu yüzden öğeler serileştirilmez ve kodla eklenir, genellikle formun veya pencerenin yapıcısında. Delphi ve C++ Builder'da Items koleksiyonu tasarım zamanında standart koleksiyon düzenleyicisiyle düzenlenir.

Evet. Tüm boyutlar mantıksal piksellerin monitörün ölçeğiyle çarpımıdır, bu yüzden satırlar, simgeler ve rozetler her DPI'da nettir. WinForms'ta genişlikler ve yükseklikler VCL'deki gibi DPI / 96 ile ölçeklenir, WPF ve Avalonia'da ise cihazdan bağımsız birimlerdir.

Evet. sgcNavigationSaveToPNG ve sgcNavigationSaveToSVG, bir çubuğu modelinden pencere, VCL veya FireMonkey olmadan çizer; Delphi 10.2'den itibaren Linux64'te de. Dokümantasyon, görsel regresyon testleri veya uygulamanızın menüsünü gösteren bir web sayfası için kullanın.

Hayır. iOS ve Android'de TsgcFMXDockManager panelleri yerleşir, bölünür, sekmelenir ve otomatik gizlenir, ancak yüzmez: AllowFloating False olmaya zorlanır, üzerine gelme olmadığı için dokunmak otomatik gizlenen bir paneli açar, uzun basmak panel menüsünü açar ve sürükleme yalnızca bırakma kılavuzlarını gösterir. Yüzen pencereler VCL, WinForms, WPF, Avalonia masaüstü uygulamalarında ve Windows ile macOS üzerinde FireMonkey'de çalışır. Masaüstünde kaydedilmiş bir düzen yine de bir telefonda yüklenir: yüzen pencerelerinin panelleri ilk yerleşimlerini korur. Bkz. Yüzen pencereler.

sgcNavigation Yardımı

3,000+Geliştirici
20+Yıl
761+Bileşen
30+API Entegrasyonu
5Platform
30 Günlük Para İade GarantisiMemnun kalmadınız mı? Satın alımdan sonraki 30 gün içinde tam para iadesi talep edin. İade politikasına bakın

sgcNavigation'ı Bugün Deneyin

sgcUI denemesi sgcNavigation'ı ve diğer tüm sgcUI ürünlerini içerir.