2012-06-24 13 views
6

में JTextArea या JEditorPane बनाना जावा के साथ एक सीएसएस संपादक बनाने के लिए मैं स्विंग के बारे में कुछ शोध कर रहा हूं। मैं JTextArea के सीएसएस और एचटीएमएल को निर्यात करने की कोशिश कर रहा हूं (मैं .css दस्तावेज़ बनाने के बाद करूंगा।) यहां ग्रिडलाउट है कि मेरा मुख्य लेआउट "बिल्ड" मेनू आइटम पर क्लिक करने के बाद कॉल करता है।JTrame स्क्रॉल करने योग्य

package csseditor_gui_built; 
import java.awt.GridLayout; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.JTextArea; 
import javax.swing.JScrollPane; 
import javax.swing.JScrollBar; 
import javax.swing.text.DefaultCaret; 
import java.awt.Font; 
import java.awt.Color; 


public class ExportGridLayout extends JFrame { 
    public ExportGridLayout(String HTML, String CSS){ 


     GridLayout layout = new GridLayout(1,2,2,2); 
     setLayout(layout); 

     JTextArea textAreaHtml = new JTextArea(); 
     JTextArea textAreaCss = new JTextArea(); 

     //Creating a new font. 
     Font fontumuz = new Font("Courier New", Font.PLAIN, 12); 

     // Setting constructor strings 
     textAreaHtml.setText(HTML); 
     textAreaCss.setText(CSS); 

     //Additional details.. 
     textAreaHtml.setEditable(false); 
     textAreaCss.setEditable(false); 

     //Appending font to the textArea's 
     textAreaHtml.setFont(fontumuz); 
     textAreaCss.setFont(fontumuz); 

     // Adding the objects to JFrame 
     add(textAreaHtml); 
     add(textAreaCss); 

    } 
} 

यह बहुत सीधे आगे है। बस इन पाठों में स्क्रॉल बार या पैन जोड़ने में मेरी सहायता करें। वेबसाइट में कोई अन्य सुझाव काम नहीं करते हैं।

+1

एचटीएमएल संबंधित काम कर रही के लिए, प्रयोग करने पर विचार [JTextPane/JEditorPane] (http://docs.oracle.com/javase/tutorial/uiswing/components/editorpane.html), 'JTextArea' इस तरह के लिए नहीं होती चीजें, आईएमएचओ। –

+0

यह वही बात है, मैं इसका उपयोग करूंगा, लेकिन उन्हें स्क्रॉल करने योग्य नहीं बना सकता – mozcelikors

उत्तर

8

इसका इस तरह से ...

JTextArea text = new JTextArea();

JScrollPane scroll = new JScrollPane(text);

संपादित हिस्सा

add(scroll);

यहाँ

एक आपकी मदद के लिए काम कर कोड है:

import java.awt.*; 
import javax.swing.*; 

public class JTextAreaExample 
{ 
    private void createAndDisplayGUI() 
    { 
     JFrame frame = new JFrame("JTextArea Scrollable"); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

     JPanel contentPane = new JPanel(); 
     contentPane.setLayout(new GridLayout(1, 2, 2, 2)); 

     JTextArea tArea1 = new JTextArea(); 
     tArea1.setLineWrap(true); 
     JTextArea tArea2 = new JTextArea(); 
     tArea2.setLineWrap(true); 
     tArea1.setText("I got a long long line of text in my JTextArea"); 
     tArea2.setText("I got a long long line of text in my JTextArea"); 

     JScrollPane scroller1 = new JScrollPane(); 
     JScrollPane scroller2 = new JScrollPane(); 
     scroller1.setViewportView(tArea1); 
     scroller2.setViewportView(tArea2); 

     contentPane.add(scroller1); 
     contentPane.add(scroller2); 

     frame.setContentPane(contentPane); 
     frame.setSize(100, 100); 
     frame.setLocationByPlatform(true); 
     frame.setVisible(true); 
    } 

    public static void main(String... args) 
    { 
     SwingUtilities.invokeLater(new Runnable() 
     { 
      public void run() 
      { 
       new JTextAreaExample().createAndDisplayGUI(); 
      } 
     }); 
    } 
} 
+0

मुझे डर है कि यह काम नहीं करता है। बस संकलक पर कोशिश करें। ऐसा इसलिए है क्योंकि मैं ग्रिडलाउट का उपयोग करता हूं या नहीं, मुझे – mozcelikors

+0

पता नहीं है यह JTextArea के लिए ठीक काम करता है ... और हाँ, मुझे उम्मीद है कि आपके पास JTextArea पूर्ण करने के लिए पर्याप्त प्रविष्टि है ताकि स्क्रॉलबार प्रकट हो, फ्रेम आकार भी सेट किया जा सके। –

+0

यह वास्तव में काम नहीं करता है। मेरे पास बहुत अधिक प्रविष्टि है। टेक्स्टरेस को पूरे वेबपृष्ठ के कोड को आउटपुट करना होता है। अच्छा, वे करते हैं। लेकिन स्क्रॉल सलाखों के बिना। – mozcelikors