Mam JTextArea w JPanel. W jaki sposób mogę JTextArea wypełnić cały JPanel i zmienić rozmiar, gdy JPanel zmienia rozmiar i przewija, gdy wpisuje się za dużo tekstu?Java JTextArea, która automatycznie zmienia rozmiar i przewija
Odpowiedz
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout()); //give your JPanel a BorderLayout
JTextArea text = new JTextArea();
JScrollPane scroll = new JScrollPane(text); //place the JTextArea in a scroll pane
panel.add(scroll, BorderLayout.CENTER); //add the JScrollPane to the panel
// CENTER will use up all available space
Zobacz http://download.oracle.com/javase/6/docs/api/javax/swing/JScrollPane.html lub http://download.oracle.com/javase/tutorial/uiswing/components/scrollpane.html Więcej szczegółów na JScrollPane
Umieść JTextArea wewnątrz JScrollPane, a miejsce, które do JPanel zz układem, który ustala rozmiar. Przykładem z GridBagLayout, na przykład mógłby wyglądać następująco:
JPanel panel = new JPanel();
panel.setLayout(new GridBagLayout());
JScrollPane scrollpane = new JScrollPane();
GridBagConstraints cons = new GridBagContraints();
cons.weightx = 1.0;
cons.weighty = 1.0;
panel.add(scrollPane, cons);
JTextArea textArea = new JTextArea();
scrollPane.add(textArea);
To tylko szorstki szkic, ale powinien zilustrować, jak to zrobić.
Prawie nie głosowałem na to z powodu użycia GridBagLayout dla tak prostej potrzeby. –
Nigdy nie używaj GridBagLayout! Nigdy! –
Dzięki długiej i pełnej irytacji z każdym innym menedżerem layoutu w Swing, teraz używam GridBagLayout prawie wyłącznie. To artefakt mojej osobistej historii, a nie rekomendacji. Proszę użyć dowolnego menedżera układu, który pasuje do twoich potrzeb. W tym przypadku uważam, że dokładna specyfikacja wag wyraźnie wskazuje, że panel przewijania pochłania wszystkie zmiany w rozmiarze. Ale na pewno nie warto używać skomplikowanego menedżera układu do prostego układu. – Zoe
- 1. Przeglądarka systemu Android automatycznie zmienia rozmiar tekstu
- 2. DataGridView kolumna automatycznie dostosowuje szerokość i zmienia rozmiar
- 3. Java JTextArea multiline help
- 4. Jak ustawić AUTO-SCROLLING JTextArea w Java GUI?
- 5. ExtJS: Automatycznie zmienia rozmiar pól formularza przy zmianie rozmiaru okna
- 6. Java setResizable (false) zmienia rozmiar okna (swing)
- 7. Java JTextArea KeyListener
- 8. Java - JPanel z marginesami i JTextArea wewnątrz
- 9. Automatycznie zmieniaj rozmiar widżetu dojo dijit.Grid, gdy kontener rodzica zmienia rozmiar.
- 10. Xcode automatycznie zmienia storyboard xml
- 11. Funkcja java, która zmienia liczbę ujemną na 0
- 12. Xcode 6 automatycznie zmienia rozmiar aplikacji dla iPhone'a 6 i 6 oraz
- 13. Fancybox iframe dynamicznie zmienia rozmiar
- 14. Maven: rozmiar pliku binarnego zmienia rozmiar pliku po kompilacji
- 15. Uibutton zmienia rozmiar po zmianie czcionki?
- 16. Ekran powitalny zmienia rozmiar nieprawidłowo
- 17. AlertDialog z niestandardowym widokiem nie "zmienia rozmiar"
- 18. Tkinter zmienia rozmiar obrazu tła na rozmiar okna (Python 3.4)
- 19. Zawartość SwingNode nie zmienia rozmiaru, gdy rodzic SwingNode zmienia rozmiar
- 20. automatycznie zmienia kierunek tekstu w polu tekstowym
- 21. HTML TextArea zmień rozmiar automatycznie
- 22. Automatycznie zmienia rozmiar części elementu div w zależności od szerokości obrazu?
- 23. Wersja Java automatycznie zmienia się na java 1.5 po aktualizacji klucza
- 24. Google Chrome Console nie przewija automatycznie w dół
- 25. Przewiń w dół strony automatycznie, dopóki użytkownik przewija w górę
- 26. Funkcja RecyclerView automatycznie przewija do pozycji WebView/Fresco SimpleDraweeView
- 27. Rozmiar UIWebView zmienia się na loadRequest
- 28. Chrome na Androida zmienia rozmiar czcionki
- 29. Dlaczego rozmiar czcionki się nie zmienia?
- 30. Jak mogę utworzyć widok tekstowy, który automatycznie zmienia rozmiar czcionki, aby pasował do miejsca?
wspaniała odpowiedź dzięki! –