2013-02-20 34 views
7

mssql ve Delphi 2009 kullanıyorum. Bir form, boolean alanına bağlı bir dbgrid içeriyorsa, değerler True veya False olarak görüntülenir. Delfı dbgriddelphi dbgrid boolean değeri, false false kabul, daha fazla değer nasıl kabul edilir?

f 
fa 
fal 
fals 
false 
t 
tr 
tru 
true 

true veya false olmak çevirmek için yeteneği vardır. Değer eklemek istiyorum, diğer dizeleri kabul edebilir ve bunları true veya false ile eşleştirin. Bu değerler nereye eklenebilir?

+0

Dbgrid'in bunları çevirdiğini doğrulamak için hangi yöntemi kullanıyorsunuz? Şüpheliyim ki hiç çeviri olmayabilir. Örneğin metni giriyorsanız, otomatik olarak sTextFalse/sTextTrue'ye otomatik olarak tamamlanıyor olabilir. –

+0

@SertacAkyuz bu benim sorum. Delphi'nin nasıl yaptığını bilmiyorum ve bunu yanlış yapmak için f'yi kontrol eden yöntemi arıyorum. onun sql içinde gerçekten şüpheliyim. – none

+0

@none - Sorunuz, olası doğru/yanlış giriş olasılıklarını nasıl değiştireceğinizdir. Sorum şu: dbgrid'in fa'yı false çevirdiği sonucuna nasıl ulaştınız. –

cevap

9

TBooleanField.DisplayValues için varsayılan davranış budur. db birim kaynağına bakın:
db.TBooleanField.SetAsString ve db.TBooleanField.SetDisplayValues.

Örneğin TField.DisplayValues := 'Yes;No'; ayarlarsanız: Y, Ye, YesTrue temsil edecek; N, No, False'u temsil edecektir.

Daha fazla değer ekleyemezsiniz. Diğer yanıtın önerdiği şekilde OnSetText kullanmıyorsanız veya TDbGrid.PickList kullanın.

Kişisel olarak, TDBGrid adresindeki Boolean alan değeri gösterimi için CheckBox kullanırım.
Bunun nasıl yapılacağı konusunda bol miktarda examples var.

2

Boole alanınız için bir OnSetText olayı yazabilir ve verilen metni True veya False olarak yorumlayabilirsiniz.

İlgili konular