प्राप्त करना मैं एक उदाहरण के रूप में जापानी आईएमई का उपयोग कर रहा हूं लेकिन यह शायद अन्य भाषाओं में समान है जो इनपुट के लिए आईएमई का उपयोग करते हैं।सी # और आईएमई - वर्तमान इनपुट टेक्स्ट
जब उपयोगकर्ता आईएमई का उपयोग कर टेक्स्टबॉक्स में टेक्स्ट टाइप करता है, तो KeyDown और KeyUp ईवेंट निकाल दिए जाते हैं। हालांकि टेक्स्टबॉक्स। टेक्स्ट प्रॉपर्टी टाइप किए गए टेक्स्ट को तब तक नहीं लौटाती जब तक कि उपयोगकर्ता ने एंटर कुंजी का उपयोग करके आईएमई में इनपुट को मान्य नहीं किया हो।
तो उदाहरण के लिए यदि उपयोगकर्ता 5 गुणा types टाइप करता है तो मान्य करता है, मुझे प्रत्येक बार टेक्स्टबॉक्स के साथ 5 कीडाउन/कीप घटनाएं मिलेंगी। पाठ वापस लौटने के बाद (खाली स्ट्रिंग) और अंत में मुझे एक कीडाउन/एंटर कुंजी और टेक्स्टबॉक्स के लिए कीप। टेक्स्ट सीधे "あ あ あ あ あ" बन जाएगा।
उपयोगकर्ता टाइपिंग करते समय उपयोगकर्ता इनपुट कैसे प्राप्त कर सकता है, उपयोगकर्ता अंत में मान्य होने से पहले?
(मैं कैसे एक वेब पेज पर एक < इनपुट > मैदान पर जावास्क्रिप्ट में यह करने के लिए पता है, तो यह सी # में संभव होना चाहिए!)
क्या यह विंडोज़ में है? यदि हां, तो आप WM_IME_COMPOSITION Messsage को रोक सकते हैं और उपयोगकर्ता इनपुट प्राप्त करने के लिए ImmGetCompositionString का उपयोग कर सकते हैं। – Dian