2015-03-05 5 views
5

मैं पाइथन और पायसाइड के साथ एक क्यूटी अनुप्रयोग विकसित कर रहा हूं। एप्लिकेशन उबंटू लिनक्स पर चलता है; मशीन में एक टच स्क्रीन है।QInputDialog को दिखाने के लिए वर्चुअल कीबोर्ड को कैसे ट्रिगर करें?

वर्चुअल कीबोर्ड 'ऑनबोर्ड' उपयोगकर्ता को टेक्स्ट दर्ज करने के लिए उपयोग किया जाता है। डिफ़ॉल्ट रूप से यह छिपा हुआ है। एक बार पर एक टेक्स्ट फ़ील्ड जैसे gedit फोकस हो जाता है यह स्वचालित रूप से वर्चुअल कीबोर्ड को ट्रिगर करता है और यह दिखाता है।

हालांकि, मेरे आवेदन में मेरे पास एक QInputDialog है जो उपयोगकर्ता को कुछ इनपुट के लिए पूछता है। मेरे मामले में, QInputDialog के टेक्स्ट फ़ील्ड पर फ़ोकस करने से वर्चुअल कीबोर्ड को दिखाने के लिए ट्रिगर नहीं किया जाता है। मैं उसे कैसे प्राप्त कर सकता हूं?

उत्तर

3

README ऑनबोर्ड के अनुसार एक डीबीयूएस सेवा का खुलासा करता है ताकि एप्लिकेशन टॉगल की दृश्यता को टॉगल कर सकें।

शायद आप getText कॉल के पहले और बाद में कुछ जोड़कर ऐसा करना चाहते हैं। जैसे

msg = QtDBus.QDBusMessage.createMethodCall('org.onboard.Onboard', '/org/onboard/Onboard/Keyboard','org.onboard.Onboard.Keyboard' 
       'org.onboard.Onboard.Keyboard.Show') 
QtDBus.QDBusConnection.sessionBus().send(msg) 
text, ok = QtGui.QInputDialog.getText(self, 'Input Dialog', 
      'Enter your name:') 
msg2 = QtDBus.QDBusMessage.createMethodCall('org.onboard.Onboard', '/org/onboard/Onboard/Keyboard','org.onboard.Onboard.Keyboard' 
       'org.onboard.Onboard.Keyboard.Hide') 
QtDBus.QDBusConnection.sessionBus().send(msg2) 

आप दोनों कॉल के लिए ToggleVisible विधि का भी उपयोग कर सकते हैं।

यह जहाज के लिए विशिष्ट है किसी भी वर्चुअल कीबोर्ड समाधान के सामान्य दिखाने के लिए या तो क्यूटी में एकीकृत है पहले से ही विद्यमान ibus या malitt इनपुट विधि इंजन का उपयोग कर या एक QPlatformInputContext को लागू करने के रूप में प्रदर्शन किया here और here या द्वारा का उपयोग करके किया गया है उस विशेष वर्चुअल कीबोर्ड के लिए स्थिति टॉगल करने के लिए या तो डीबीयूएस या कुछ अन्य संदेश पासिंग समाधान (टीसीपी सॉकेट इत्यादि) का उपयोग करना।

+0

पॉइंटर्स के लिए धन्यवाद। मैं कल उस विधि की जांच करूंगा। – Stefan

+0

यह मेरे लिए काम करता है :-)। धन्यवाद! – Stefan

+0

यह आरएचईएल पर कोई सुझाव या फिक्स पर काम नहीं कर रहा है ?? –

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