8
रोकथाम के मामले में एंटर कुंजी दबाए जाने के बाद मुझे टेक्स्टवियर को नई लाइनें बनाने की आवश्यकता है। न्यूलाइन फ्लैग सक्षम है।एंटर दबाए जाने के बाद StyledText में नई पंक्ति को कैसे रोकें
मैं कोड के इस टुकड़े है:
TextViewer myTextViewer = new TextViewer (myGroup, SWT.V_SCROLL
| SWT.FULL_SELECTION
| SWT.BORDER | SWT.WRAP);
myTextViewer.setDocument(new Document(myText));
StyledText myStyledText = myTextViewer.getTextWidget();
myStyledText.addTraverseListener(new TraverseListener() {
@Override
public void keyTraversed(TraverseEvent e) {
if (e.detail == SWT.TRAVERSE_RETURN) {
if (preventNewLines)
e.doit = false;
}
}
});
लेकिन यह नई लाइनों वैसे भी बना देता है ... क्या मैं गलत कर रहा हूँ? क्या कोई मुझे सही कोड पोस्ट कर सकता है इसे कैसे रोकें?
संपादित करें: ठीक है, मैं भाग्य से जवाब मिल गया है, मुझे आशा है कि यह किसी और, हो सकता है ...
myStyledText.addVerifyKeyListener(new VerifyKeyListener() {
@Override
public void verifyKey(VerifyEvent e) {
if (preventNewLines &&
(e.keyCode == SWT.CR || e.keyCode == SWT.KEYPAD_CR)) {
e.doit = false;
}
}
});
आपको अपने प्रश्न का उत्तर देना चाहिए, फिर इसे उत्तर के रूप में जांचें क्योंकि यह अभी भी एक खुला प्रश्न है। – GenericJam