मैं पाठ के हाइलाइट किए गए हिस्से से एक स्ट्रिंग प्राप्त करने में सक्षम होना चाहता हूं, मैं इसके बारे में कैसे जा सकता हूं?मैं टिंकर टेक्स्ट बॉक्स से एक चयनित स्ट्रिंग कैसे प्राप्त करूं?
उत्तर
एक Tkinter.Text
या Tkinter.Entry
विजेट के लिए, आप उपयोग कर सकते हैं:
content = text.selection_get()
दोनों एक प्रविष्टि से और अजगर कंसोल में एक पाठ विजेट से पाठ का चयन होने की इंटरएक्टिव उदाहरण: अनुसार
>>> import Tkinter
>>> w = Tkinter.Tk()
>>> e = Tkinter.Entry(w)
>>> e.pack()
>>> t = Tkinter.Text(w)
>>> t.pack()
#(scribble at the widgets in the created window, and select text in the Entry)
>>> e.selection_get()
'1234'
#(select text)
>>> t.selection_get()
'1234'
>>>
ब्रायन ओकले की टिप्पणी:
selection_get
सभी विजेट्स के लिए एक सामान्य विजेट विधि उपलब्ध है। यह हमेशा टेक्स्ट विजेट से चयनित स्ट्रिंग प्राप्त नहीं करता है। यह हो सकता है, लेकिन इसकी गारंटी नहीं है। यह क्या करता है जिसे "एक्स" चयन कहा जाता है (टीके की एक्स 11 जड़ों से)। यदि आपexportselection
को टेक्स्ट विजेट के लिए गलत पर सेट करते हैं, तोselection_get
काम करने में विफल रहेगा। तो आपका सुझाव सामान्य मामले में काम करेगा, लेकिन सभी मामलों में नहीं।
get
विधि का उपयोग करें। यदि आप चाहते हैं कि चयनित टेक्स्ट इंडेक्स SEL_FIRST
और SEL_LAST
का उपयोग करें।
[संपादित करें]] टिप्पणियों में से एक ने अनुमान लगाया कि यह टिंकर के साथ काम नहीं करता क्योंकि कोई विशेषता "सेल" नहीं थी। "सेल" एक विशेषता नहीं है, यह एक टैग है। टैग टेक्स्ट विजेट की एक उल्लेखनीय शक्तिशाली विशेषता है।
import Tkinter as tk
import tkFont
class App:
def __init__(self):
root=tk.Tk()
self.text = tk.Text(root)
self.text.pack()
self.button = tk.Button(root, text="Get Selection", command=self.OnButton)
self.button.pack()
root.mainloop()
def OnButton(self):
print "selected text: '%s'" % self.text.get(tk.SEL_FIRST, tk.SEL_LAST)
app=App()
, काम करने के लिए इस डेमो पाठ बॉक्स में कुछ पाठ लिखें तो बटन दबाएँ के लिए:
यहाँ एक उदाहरण है।
मैं पाठ या एंट्री विजेट में कोई इस तरह के "sel" विशेषता देखते हैं - हो सकता है कि आप टीसीएल से उपलब्ध विधियों के प्रति referring कर रहे हैं, लेकिन यह Python में दूसरे नाम के तहत लपेटा गया है? – jsbueno
@jsbueno: 'sel' एक विशेषता नहीं है। यह एक टेक्स्ट टैग है जो चयन का प्रतिनिधित्व करता है, और यह टिंकर के तहत उपलब्ध है। –
रुपये द्वारा परिभाषित अंतर्निहित स्ट्रिंग का उपयोग करने की आवश्यकता नहीं है। 'टिंकर' में एक चर को परिभाषित करने के लिए परिभाषित किया गया है - 'SEL_FIRST' और 'SEL_LAST'। – ArtOfWarfare
पाठ विजेट एक विशेष टैग 'sel' नाम दिया, text_widget.tag_ranges के माध्यम से Tkinter.SEL के माध्यम से सुलभ और परीक्षण योग्य (Tkinter.SEL) है, जो आप "चयनित" पाठ को पुनः प्राप्त करने की अनुमति देता है।
if textWidget.tag_ranges(Tkinter.SEL):
print('SELECTED Text is %r' % textWidget.get(Tkinter.SEL_FIRST, Tkinter.SEL_LAST))
else:
print('NO Selected Text')
आप एक से थोड़ा अधिक उन्नत समाधान चाहते हैं, तो आप भी कोशिश कर सकते हैं:: यहाँ एक सरल उदाहरण है
ranges = textWidget.tag_ranges(Tkinter.SEL)
if ranges:
print('SELECTED Text is %r' % textWidget.get(*ranges))
else:
print('NO Selected Text')
प्लस 1 यह जांचने के लिए कि क्या कोई चयनित टेक्स्ट शुरू करने के लिए है या नहीं। अन्यथा SEL_FIRST/LAST त्रुटि होगी :-) –
- 1. टेक्स्ट बॉक्स में चयनित लाइन कैसे प्राप्त करें?
- 2. टेक्स्ट बॉक्स में पाइथन टिंकर श्रोता
- 3. मैं टिंकर में टूलटिप्स कैसे प्रदर्शित करूं?
- 4. कॉम्बो बॉक्स के नाम से jQuery का उपयोग कर कॉम्बो बॉक्स का चयनित टेक्स्ट प्राप्त करें?
- 5. एक टेक्स्टकूट बॉक्स से स्ट्रिंग प्राप्त करना
- 6. जावा - मैं जेएलिस्ट से सभी चयनित मूल्य कैसे प्राप्त करूं?
- 7. मैं कंबोबॉक्स से चयनित आइटम कैसे प्राप्त करूं जो डाटाटेबल
- 8. मैं संदेश बॉक्स बटन कैप्शन कैसे प्राप्त करूं?
- 9. टिंकर पूछताछ संवाद बॉक्स
- 10. टेक्स्ट बॉक्स से इनपुट मान प्राप्त करना
- 11. मैं चयनित सूची-बॉक्स आइटम को एक अलग रंग में कैसे आकर्षित करूं?
- 12. मैं WPF में कॉम्बोबॉक्स से टेक्स्ट मान कैसे प्राप्त करूं?
- 13. मैं HTML टेक्स्ट बॉक्स का आकार कैसे सेट करूं?
- 14. मैं UITextField से एनएसएसटींग में टेक्स्ट कैसे प्राप्त करूं?
- 15. टिंकर टेक्स्ट विजेट
- 16. मैं एंड्रॉइड टेक्स्ट व्यू में स्ट्रिंग कैसे प्रीपेड करूं?
- 17. एक्लिप्स जावा संपादक से चयनित टेक्स्ट प्राप्त करें
- 18. एंड्रॉइड में edittext से चयनित टेक्स्ट कैसे प्राप्त करें?
- 19. मैं DataGridView में चयनित डेटारो कैसे प्राप्त करूं?
- 20. मैं WSAGetLastError() से त्रुटि स्ट्रिंग कैसे प्राप्त करूं?
- 21. मैं यूयूआई 3 में चुनिंदा बॉक्स मूल्य कैसे प्राप्त करूं?
- 22. चयनित टेक्स्ट प्रविष्टि वाले कॉम्बो बॉक्स में चयनित टेक्स्ट प्राप्त करने का सबसे आसान तरीका क्या है?
- 23. देशी Win32 API का उपयोग कर केंद्रित विंडो से चयनित टेक्स्ट कैसे प्राप्त करूं?
- 24. मैं UIImagePickerControllerReferenceURL से डेटा कैसे प्राप्त करूं?
- 25. मैं पर्ल में एक स्ट्रिंग की लंबाई कैसे प्राप्त करूं?
- 26. Emacs Lisp में चयनित टेक्स्ट कैसे प्राप्त करें?
- 27. मैं एक और गतिविधि में एक चर कैसे प्राप्त करूं?
- 28. jQuery चयनित टेक्स्ट
- 29. सूची बॉक्स; चयनित
- 30. टेक्स्टबॉक्स में चयनित टेक्स्ट प्राप्त करें
टेक्स्ट विजेट में 'select_get' विधि नहीं है। –
@ ब्रायन ओकले: आप किस संस्करण का उपयोग कर रहे हैं? मैं टिंकर का उपयोग कर रहा हूं कि पायथन 2.7 के साथ जहाजों, और मेरे टेक्स्ट विजेट्स में निश्चित रूप से 'चयन_get' है। (मैंने बस एक कंसोल सेक्शन में फिर से कोशिश करने के लिए कोशिश की और यह काम किया)। – jsbueno
मुझे और सटीक होना चाहिए था: टेक्स्ट विजेट में 'select_get' विधि नहीं है। 'select_get' सभी विजेट्स के लिए उपलब्ध एक सामान्य विजेट विधि है। यह टेक्स्ट विजेट से चयनित स्ट्रिंग _not_ प्राप्त नहीं करता है। यह हो सकता है, लेकिन इसकी गारंटी नहीं है। यह क्या करता है जिसे "एक्स" चयन कहा जाता है (टीके की एक्स 11 जड़ों से)। यदि आप टेक्स्ट विजेट के लिए गलत निर्यात करने के लिए 'exportelection' सेट करते हैं, तो' select_get' काम करने में विफल रहेगा। तो आपका सुझाव सामान्य मामले में काम करेगा, लेकिन सभी मामलों में नहीं। –