यदि मेरे पास SWT के साथ एक टेक्स्ट फ़ील्ड है, तो मैं 100% या कुछ निर्दिष्ट चौड़ाई को भरने के लिए फ़ील्ड कैसे प्राप्त कर सकता हूं।टेक्स्ट फ़ील्ड को क्षैतिज रूप से 100% भरने के लिए कैसे करें
उदाहरण के लिए, यह टेक्स्ट फ़ील्ड केवल क्षैतिज रूप से पहुंच जाएगा।
Text text = new Text(shell, SWT.BORDER);
text.setText ("Text Field");
text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER));
/: चूंकि यह स्वीकार किए जाते हैं जवाब है मैं त्रुटियों को दूर
public class Tmp {
public static void main (String [] args) {
Display display = new Display();
Shell shell = new Shell (display);
GridLayout gridLayout = new GridLayout();
shell.setLayout (gridLayout);
Button button0 = new Button(shell, SWT.PUSH);
button0.setText ("button0");
Text text = new Text(shell, SWT.BORDER | SWT.FILL);
text.setText ("Text Field");
shell.setSize(500, 400);
//shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}
कन्स्ट्रक्टर ग्रिडडाटा (int) को बहिष्कृत किया गया है। " – qualidafial
के बजाय" नया ग्रिडडाटा (SWT.FILL, SWT.CENTER) "का उपयोग करें, आपको ग्रिडडेटा ऑब्जेक्ट्स का पुन: उपयोग नहीं करना चाहिए क्योंकि वे ग्रिड सेल गणनाओं के लिए कैश के रूप में कार्य करते हैं। ग्रिडडाटा पुन: उपयोग लेआउट बग का कारण बन सकता है जहां एक सामान्य ग्रिडडाटा साझा करने वाले कई घटक सबसे छोटे आकार के आकार के लिए छोटा कर दिए जाते हैं। यह ग्रिडडाटा के जावाडोक में है। – christopheml
यह अब गलत लगता है (शायद एपीआई बदल गया है?), [कन्स्ट्रक्टर 'ग्रिडडाटा (int चौड़ाई, int ऊंचाई) '] (http://help.eclipse.org/juno/index.jsp?topic=%2Forg। eclipse.platform.doc.isv% 2 संदर्भ% 2Fapi% 2Forg% 2 फ़ेक्लिसे% 2Fswt% 2Flayout% 2FGridData.html) न्यूनतम आयाम सेट करता है और इन SWT स्थिरांक के साथ उपयोग नहीं किया जा सकता है। – Kapep