Komponenty pozycjonujące w GUI Swing
Mam kilka pytań dotyczących elementów pozycjonujących i niektórych pytań dotyczących pól tekstowych i obszarów tekstowych (Java Swing). Każda pomoc jest bardzo mile widziana.
W tej chwili próbuję mieć dwa pola tekstowe obok siebie z inną etykietą nad każdym opisem opisującym to pole tekstowe. Aby to osiągnąć, umieściłem je wGridLayout(2, 2)
.
Czy to najlepszy sposób? Tylko w ten sposób wiem, że mam etykietę bezpośrednio nad innym komponentem. Czy jest lepszy sposób? A jeśli jest tylko jedna etykieta nad jednym przyciskiem. Czy rozsądne jest umieszczenie tego przezGridLayout(2, 1)
? Jestem niedowidzący, więc nie sądzę, aby przyciski pozycjonujące tylko ich pozycją pikseli były opcją, chyba że istnieje prosty sposób umieszczania komponentów na względnej liczbie pikseli na innym komponencie.
To prowadzi mnie do następnego pytania. Jaki jest najlepszy sposób na uzyskanie tego samego interfejsu użytkownika, jak powyżej, ale z innym komponentem (przyciskiem) wyśrodkowanym pod nim. Zasadniczo interfejs użytkownika powinien składać się z dwóch nazwanych pól tekstowych z przyciskiem obliczania pod. Sposób, w jaki to zrobiłem, polega na umieszczeniu powyższych elementów w panelu i dodaniu tego oraz przycisku obliczenia do otaczającego panelu za pomocąGridLayout(2, 1)
. Problem polega na tym, że przycisk staje się tak duży jak panel nad nim (zakładam). Jak mogę to zmienić i nadal mieć idealnie dopasowany przycisk pod panelem pól tekstowych / etykiet? Podobnie z etykietami nad obszarami tekstowymi. Etykieta powinna być mała, ale powinna mieć większą przestrzeń dla obszaru tekstowego pod.
(pole tekstowe): Ponownie odwołując się do powyższego interfejsu użytkownika, jeśli użytkownik wpisze wiele znaków w pierwszym polu tekstowym, czy litery przejdą przez pole tekstowe po prawej stronie? Jeśli tak, jak mogę temu zapobiec?
Jeśli dołączę tekst do obszaru tekstowego i jest on już pełny, czy automatycznie pozwoli użytkownikowi przewijać? Jeśli nie, jaki jest prosty sposób na przewijanie obszaru tekstu?
W tej chwili nie ustawiam rozmiaru obszaru tekstowego. Czy po prostu rośnie, gdy dodaję tekst? Czy ma domyślny rozmiar w postaci liczby znaków?