2013-02-20 13 views
7

मैं mssql और डेल्फी 200 का उपयोग कर रहा हूं। जब किसी फॉर्म में एक डब्रिड होता है जो बूलियन फ़ील्ड से जुड़ा होता है, तो मान True, या False के रूप में प्रदर्शित होते हैं। डेल्फी DBGridडेल्फी डीबीग्रीड बूलियन मूल्य, एफ एफए फाल झूठी झूठी स्वीकार करें, अधिक मूल्य कैसे स्वीकार करें?

f 
fa 
fal 
fals 
false 
t 
tr 
tru 
true 

true या false होने के लिए अनुवाद करने की क्षमता है। मैं मूल्य जोड़ना चाहता हूं ताकि यह अन्य तारों को स्वीकार कर सके और उन्हें true या false से मिलान कर सके। इन मानों को कहां जोड़ा जा सकता है?

+0

डीबीग्रीड उन लोगों का अनुवाद करने के लिए आप किस विधि का उपयोग करते हैं? मुझे क्या संदेह है कि यह बिल्कुल अनुवाद नहीं हो सकता है। यदि आप उदाहरण के लिए टेक्स्ट दर्ज कर रहे हैं, तो यह केवल sTextFalse/sTextTrue को स्वतः पूरा कर सकता है। –

+0

@SertacAkyuz मेरा प्रश्न है। मैं नहीं जानता कि डेल्फी कैसे करता है, और मैं उस विधि की तलाश में हूं जो इसे गलत बनाने के लिए f की जांच करता है। मैं वास्तव में एसक्यूएल में संदेह करता हूं। – none

+0

@ नहीं - आपका प्रश्न यह है कि संभावित सत्य/झूठी प्रविष्टि संभावनाओं को कैसे संशोधित करें। मेरा सवाल यह है कि आपने कैसे निष्कर्ष निकाला है कि डीबीग्रीड एफए को झूठा अनुवाद करता है। –

उत्तर

9

यह TBooleanField.DisplayValues के लिए डिफ़ॉल्ट व्यवहार है। db यूनिट स्रोत देखें:
db.TBooleanField.SetAsString और db.TBooleanField.SetDisplayValues

आप उदाहरण के लिए TField.DisplayValues := 'Yes;No'; सेट करते हैं: Y, Ye, YesTrue प्रतिनिधित्व करेंगे; N, NoFalse का प्रतिनिधित्व करेगा।

आप इसमें अधिक मूल्य नहीं जोड़ सकते हैं। जब तक आप अन्य उत्तर द्वारा सुझाए गए OnSetText का उपयोग नहीं करते हैं, या TDbGrid.PickList का उपयोग करें।

व्यक्तिगत रूप से, मैं TDBGrid पर बूलियन फ़ील्ड मान प्रतिनिधित्व के लिए CheckBox का उपयोग करूंगा।
वहां ऐसा करने के तरीके पर examples के बहुत सारे हैं।

2

आप अपने बूलियन क्षेत्र के लिए OnSetText ईवेंट लिख सकते हैं, और True या False के रूप में दिए गए किसी भी पाठ की व्याख्या कर सकते हैं।

संबंधित मुद्दे