Alan sınıfı
Düzenlenebilir bir alan için soyut sınıf.
İmza:
export declare abstract class Field<T = any> implements IASTNodeLocationSvg, IASTNodeLocationWithBlock, IKeyboardAccessible, IRegistrable, ISerializable
Uygulandığı yer: IASTNodeLocationSvg, IASTNodeLocationWithBlock, IKeyboardAccessible, IRegistrable, ISerializable
Markalar
Marka | Değiştiriciler | Açıklama |
---|---|---|
(oluşturucu)(değer; doğrulayıcı; yapılandırma) | Field sınıfının yeni bir örneğini oluşturur |
Özellikler
Özellik | Değiştiriciler | Tür | Açıklama |
---|---|---|---|
borderRect_ | protected |
SVGRectElement | boş | Oluşturulan alanın SVG kenarlık öğesi. |
clickTarget_ | protected |
Öğe | boş | Tıklama işleyicinin bağlı olduğu öğe. |
constants_ | protected |
ConstantProvider | boş | Kaynak blokun oluşturucusuyla ilişkili sabitler. |
İMLEÇ | dize | Düzenleyiciyi başlatan hotspot'un üzerine gelindiğinde fare imleci stili. | |
DEFAULT_VALUE | Tr | boş | **Field**'da ayarlanan varsayılan değerin üzerine yazmak için doğrudan prototipi güncelleyin. Örnek: |
|
DÜZENLENEBİLİR | boolean | Düzenlenebilir alanlarda genellikle bunların düzenlenebilir olduğunu belirten bir tür kullanıcı arayüzü gösterilir. Bu mesajlar serileştirici tarafından da kaydedilir. | |
enabled_ | protected |
boolean | Alan değeri, düzenlenebilir bir bloktaki düzenleyici kullanılarak değiştirilebilir mi? |
fieldGroup_ | protected |
SVGGElement | boş | Oluşturulan alanın SVG grup öğesi. |
isDirty_ | protected |
boolean | Bu blokun yeniden oluşturulması gerekiyor mu? |
maxDisplayLength | sayı | Üç nokta eklenmeden önce gösterilecek maksimum metin karakter sayısı. | |
ad? | dize | (İsteğe bağlı) Alanın adı. Her blok içinde benzersizdir. Statik etiketler genellikle adsızdır. | |
NBSP |
|
(bildirilmedi) | Boşluksuzdur. |
SERİ OLUŞTURULABİLİR | boolean | Serileştirilebilen alanlar, serileştirici tarafından kaydedilir, seri haline getirilemeyen alanlar ise kaydedilmez. Düzenlenebilir alanlar da serileştirilebilir olmalıdır. SERIALIZABLE'ın geriye dönük uyumluluğa sahip olması için bu varsayılan durum geçerli değildir. | |
size_ | protected |
Boyut | |
SKIP_SETUP |
|
benzersiz simge | Bir alanın kurucusunun alanın değerini *ayarlamaması* veya "config_" komutunu çalıştırması gerektiği ve bunun yerine bir alt sınıfın bunu yapmasına izin vermesi gerektiği zamanı bildirmek için kullanılan değer. |
sourceBlock_ | protected |
Engelle | boş | Bu alanın ekli olduğu blok. Boş olarak başlar ve init içinde ayarlanır. |
textContent_ | protected |
Metin | boş | Oluşturulan alanın metin içeriği öğesi. |
textElement_ | protected |
SVGTextElement | boş | Oluşturulan alanın SVG metin öğesi. |
validator_ | protected |
FieldValidator<T> | boş | Kullanıcı düzenlenebilir bir alanı düzenlediğinde çağrılan doğrulama işlevi. |
value_ | protected |
Tr | boş | |
visible_ | protected |
boolean | Alan görünür durumda mı yoksa blokun daraltılması nedeniyle gizleniyor mu? |
Yöntemler
Yöntem | Değiştiriciler | Açıklama |
---|---|---|
applyColour() | Alanı, blokun rengine/stiline uyacak şekilde günceller. Alanın rengi blokun rengine bağlıysa, soyut olmayan alt sınıflar bunu uygulamak isteyebilir. Alakalı zamanlarda (ör. üst blok veya oluşturucunun değişmesi) otomatik olarak çağrılır. Daha fazla bilgi için alan belgelerine veya örnek için FieldDropdown'a göz atın. |
|
bindEvents_() | protected |
Etkinlikleri alana bağlayın. Özel giriş işleme yapılması gerekiyorsa alt sınıflar tarafından geçersiz kılınabilir. |
configure_(config) | protected |
Alana iletilen yapılandırma eşlemesini işleyin. |
createBorderRect_() | protected |
Alan kenarlığı dikdörtgen öğesi oluşturun. Alt sınıflar tarafından geçersiz kılınmamalıdır. Bunun yerine, initView içinde işlevin sonucunu değiştirin veya çağırmak için ayrı bir işlev oluşturun. |
createTextElement_() | protected |
Alan metin öğesi oluşturun. Alt sınıflar tarafından geçersiz kılınmamalıdır. Bunun yerine, initView içinde işlevin sonucunu değiştirin veya çağırmak için ayrı bir işlev oluşturun. |
doClassValidation_(newValue) | protected |
Bir alanın değerinde yapılan değişiklikleri ayarlamadan önce doğrulayın. Alt sınıf uygulamasının bir örneği için **FieldDropdown**'a bakın. **NOT:** Doğrulama; |
doClassValidation_(newValue) | protected |
|
doValueGeçersiz_(_geçersizValue, _fireChangeEvent) | protected |
Alana geçersiz değer girildiğini bildirmek için kullanılır. Alt sınıflar tarafından geçersiz kılınabilir (bkz. FieldTextInput). Varsayılan olarak işlem yok. |
doValueUpdate_(newValue) | protected |
Bir alanın değerini güncellemek için kullanılır. Değerlerin özel olarak depolanması/harici öğelerin güncellenmesi için alt sınıflar tarafından geçersiz kılınabilir. |
fromJson(_options) | static |
Alt sınıflar, Field alt sınıflarını bir JSON bağımsız değişken nesnesinden oluşturmak için bu yöntemi yeniden uygulamalıdır. Bir alt sınıf, bu yöntemi geçersiz kılmadıysa FieldRegistry'de bir alan alt sınıfı kaydedilmeye çalışılırsa hata oluşur. |
getAbsoluteXY_() | protected |
Bu alanın sol üst köşesinin mutlak koordinatlarını döndürün. Kaynak (0,0), sayfa gövdesinin sol üst köşesidir. |
getBorderRect() | protected |
Kenarlık dikdörtgen öğesini alır. |
getClickTarget_() | protected |
Tıklama işleyicinin bağlanacağı öğe. Açıkça ayarlanmazsa varsayılan olarak alanın SVG kökü kullanılır. Bu öğe düzenlenebilir bir alana tıklandığında düzenleyici açılır. |
getConstants() | Oluşturucu sabit sağlayıcı sağlayıcısını alın. | |
getDisplayText_() | protected |
Bu alandan gelen metni blokta görüntülenecek şekilde alın. Üç nokta ve diğer biçimlendirmeler nedeniyle getText özelliğinden farklı olabilir. |
getFlipRtl() | RTL'de alanı çevirmemiz gerekip gerekmediğini döndürür. | |
getSize() | Alanın yüksekliğini ve genişliğini döndürür. *Genel olarak* oluşturucunun çağrıldığı tek yer bu olmalıdır. |
|
getSourceBlock() | Bu alanın bağlı olduğu bloğu alın. | |
getSvgRoot() | Bu düzenlenebilir alan için grup öğesini alır. Boyutu ölçmek ve konumlandırmak için kullanılır. | |
getText_() | protected |
Bu alanda döndürülen metni geçersiz kılmak için bir geliştirici kancası. Bu alanın değerinin metin gösterimi yalnızca değer dizesinin gösterimi değilse geçersiz kılın. Dize yayınına başvurmak için null değerini döndürün. |
getText() | Bu alandaki metni alın. Değeri bir dizeye yayınlamaktan farklı bir davranış sağlamak için getText_ değerini geçersiz kılın. | |
getTextContent() | protected |
Metin içeriğini alır. |
getTextElement() | protected |
Metin öğesini alır. |
getTooltip() | Bu alan için ipucu metnini döndürür. | |
getValidator() | Düzenlenebilir alanlar için doğrulama işlevini veya ayarlanmamışsa null değerini alır. | |
getValue() | Alanın geçerli değerini alın. | |
initModel() | Bir bloka yüklendikten sonra alanın modelini başlatır. Varsayılan olarak işlem yok. | |
initView() | protected |
Bu alan için blok kullanıcı arayüzünü oluşturun. |
isClickable() | Bu alanın showEditor_ işlevini tanımlayıp tanımlamadığını kontrol edin. | |
isClickableInFlyout(autoClosingFlyout) | Blok bir açılır penceredeyken alanın tıklanabilir olup olmadığını kontrol edin. Varsayılan değer, basit araç kutusu gibi her zaman açık olan açılır menülerde alanların tıklanabilir olması, ancak kategori araç kutusu gibi otomatik kapanan açılır menülerde tıklanmamasıdır. Alt sınıflar, bu davranışı değiştirmek için bu işlevi geçersiz kılabilir. Bunun etkili olabilmesi için isClickable işlevinin de doğru değerini döndürmesi gerektiğini unutmayın. |
|
isCurrentlyEditable() | Bu alanın şu anda düzenlenebilir olup olmadığını kontrol edin. Bazı alanlar (ör. metin etiketleri) hiçbir zaman DÜZENLENEMEZ durumunda değildir. Diğer alanlar DÜZENLENEBİLİR olabilir, ancak düzenlenemeyen bloklarda bulunabilir veya şu anda devre dışı olabilir. | |
isEnabled() | Kaynak blok düzenlenebilir olduğunda bu alanın değerinin düzenleyici kullanılarak değiştirilip değiştirilemeyeceğini kontrol edin. | |
isFullBlockField() | protected |
Bu alanın tüm bloğu kullanıp kullanmayacağını tanımlar. Bu işlevi geçersiz kılarken dikkatli olun. Saldırıya uğramış bir davranış olduğu için, beklediğiniz / istediğiniz gibi çalışmayabilir. Bu işlevi geçersiz kılmayı düşünüyorsanız başka bir yaklaşım olup olmadığını görmek için istediğiniz davranışı forumda yayınlayın. |
isSerializable() | Bu alanın XML oluşturucu tarafından serileştirilmesi gerekip gerekmediğini kontrol edin. Geriye dönük uyumluluk ve tutarsız durumlar ile ilgili mantığı yönetir. | |
isTabNavigable() | Alanın sekmede gezinmeye uygun olup olmadığını döndürür. | |
isVisible() | Bu düzenlenebilir alanın görünür olup olmadığını alır. | |
loadLegacyState(callingClass, state) | Belirtilen durumu, eski XML kancalarından birini kullanarak yükler (kullanılması gerekiyorsa). Yükleme işleminin işlendiğini belirtmek için true (doğru), aksi takdirde false (yanlış) değerini döndürür. | |
onLocationChange(_) | Alana, konumlarını değiştirdiğini bildirir. | |
onMouseDown_(e) | protected |
Bir alanda işaretçi aşağı etkinlik yönetebilir. |
onShortcut(_shortcut) | Belirtilen klavye kısayolunu işler. | |
positionBorderRect_() | protected |
Boyut değişikliğinden sonra bir alanın kenarlık dikdörtgenini konumlandırma. |
positionTextElement_(xOfset, contentWidth) | protected |
Boyut değişikliğinden sonra bir alanın metin öğesini konumlandırın. Bu, hem LTR hem de sağdan sola konumlandırmasını kapsar. |
render_() | protected |
DOM öğelerini taşımak/yeniden boyutlandırmak ve yeni boyutu almak için getSize() tarafından kullanılır. Bloğun boyutu/şekli üzerinde etkisi olan tüm oluşturmalar burada yapılmalı ve getSize() tarafından tetiklenmelidir. |
repositionForWindowResize() | Pencere yeniden boyutlandırma sırasında WidgetDiv'i yeniden konumlandırmak için kullanılan bir geliştirici kancası. Alanınızda, pencere yeniden boyutlandırıldığında kendini yeniden konumlandırması gereken bir WidgetDiv varsa bu kancayı tanımlamanız gerekir. Örneğin, metin giriş alanları bu kancayı tanımlar, böylece WidgetDiv girişi bir pencere yeniden boyutlandırma etkinliğinde kendini yeniden konumlandırabilir. Android cihazlar, sanal klavye açıldığında bir pencere yeniden boyutlandırma etkinliği tetikleyeceğinden bu, özellikle kalıcı girişler devre dışı olduğunda önemlidir. WidgetDiv'in yeniden konumlandırmak yerine kendini gizlemesini istiyorsanız false (yanlış) değerini döndürün. Bu, varsayılan davranıştır. DropdownDivs zaten kendi konumlandırma mantığını yönetir. Bu nedenle, alanınızda yalnızca DropdownDiv varsa bu işlevi geçersiz kılmanıza gerek yoktur. |
|
saveLegacyState(callingClass) | protected |
XML durumunun dizeleştirilmiş sürümünü döndürür (kullanılması gerekiyorsa). Aksi takdirde, alanın kendi serileştirmesini kullanması gerektiğini belirtmek için null değeri döndürülür. |
setEnabled(enabled) | Kaynak blok düzenlenebilir olduğunda bu alanın değerinin düzenleyici kullanılarak değiştirilip değiştirilemeyeceğini ayarlayın. | |
setSourceBlock(block) | Bu alanı bir bloka ekleyin. | |
setTooltip(newTip) | Bu alan için ipucunu ayarlar. | |
setValidator(handler) | Düzenlenebilir alanlar için yeni bir doğrulama işlevi ayarlar veya önceden ayarlanmış bir doğrulayıcıyı temizler. Doğrulayıcı işlevi, yeni alan değerini alır ve doğrulanmış değeri döndürür. Doğrulanan değer; giriş değeri, giriş değerinin değiştirilmiş bir sürümü veya değişikliği iptal etmek için boş değer olabilir. İşlev hiçbir şey döndürmezse (veya tanımsız döndürürse) yeni değer geçerli olarak kabul edilir. Böylece, doğrulanmış işlevi alan düzeyinde değişiklik etkinliği bildirimi olarak kullanan alanlara izin verebilirsiniz. |
|
setValue(newValue, fireChangeEvent) | Alanın değerini değiştirmek için kullanılır. Doğrulama ve etkinlikleri işler. Alt sınıflar, bu yöntem yerine doClassValidation_ ve doValueUpdate_ özelliklerini geçersiz kılmalıdır. | |
showEditor_(_e) | protected |
Alan için düzenleyici oluşturmak üzere bir geliştirici kancası. Bu, varsayılan olarak işlemsizdir ve düzenleyici oluşturmak için geçersiz kılınmalıdır. |
updateEditable() | Bu alanın düzenlenebilir olup olmadığını gösteren kullanıcı arayüzünü ekleyin veya kaldırın. | |
updateSize_(margin) | protected |
Alanın boyutunu metne göre günceller. |