Tworzenie GUI
Transkrypt
Tworzenie GUI
Tworzenie GUI Dodawanie formatki do aplikacji Kliknij prawym przyciskiem na nazwę pakietu w twoja_aplikacja/Source Packages, następnie wybierz New/Jframe Form... W oknie dodawania klasy (formatki) należy wskazać jej nazwę i kliknąć Finish. Po dodaniu formatki użytkownik powinien zobaczyć: Przełącznik między projektowaniem graficznym a kodem programu Repozytorium kontrolek Właściwości obiektów Formatka na której umieszczane będą elementy formularza Definiowanie Layoutu formatki Przed rozpoczęciem pracy z formatką należy określić Layout, czyli sposób wizualizacji kontrolek na formie. Środowisko NetBeans od wersji 4.1 umożliwia wstawianie kontrolek w trybie Absolute Layout, dzięki czemu możliwe jest ich płynne umieszczanie i modyfikowanie rozmiarów. Aby zmienić Layout należy w oknie Inspector rozwinąć gałąź [Jframe], następnie kliknąć prawym przyciskiem myszy na Layout (domyślną wartością jest Border Layout), z menu podręcznego wybrać opcję Set Layout i zaznaczyć Absolute Layout. 1 Wstawianie kontrolek na formę Aby wstawić kontrolkę na formę należy wybrać kontrolkę z repozytorium kontrolek, a następnie kliknąć lewym przyciskiem na formatkę. Obrazują to poniższe rysunki: Istnieje specjalny rodzaj kontrolki (JPanel) służący do agregacji kontrolek. Właściwością tych obiektów jest to, iż dla każdego obiekty klasy JPanel definiuje się osobny Layout. Jest to o tyle istotne, że nie wszystkie kontrolki SWING zostały przystosowane do wyświetlania w trybie Absolute Layout. Właściwości obiektu. Zestaw właściwości obiektu dostępny jest w okienku Properties. W ten sposób możesz łatwo modyfikowąć opis na przyciskach itd. Podczas wpisywania wartości dla wybranej właściwości dynamicznie generowany jest odpowiedni wpis w kodzie programu i jest oznaczony jako Generated Code i nie można go usunąć w edytorze kodu(!). 2 Obsługa zdarzeń Aby dodać obsługę zdarzenia pod dowolną kontrolkę, należy kliknąć na nią prawym przyciskiem myszy, wybrać opcję Events a następnie wskazać na jakie zdarzenie kontrolka ma reagować. Po wybraniu zdarzenia użytkownik zostanie automatycznie przeniesiony do edytora kodu w miejsce w którym należy obsłużyć zdarzenie. 3 W powyższym przykładzie program reaguje na zdarzenia związane z najechaniem myszką nad przycisk (zmiana koloru) i po zjechaniu kursorem z przycisku (powrót do koloru domyślnego). Jak widać jest możliwość podłączania obsługi wielu zdarzeń pod jedną kontrolkę. Nazwa metody obsługującej zdarzenie jest nadawana domyślnie. Aby ją zmienić, lub usunąć obsługę zdarzenia, należy ustawić się w trubie Design, zaznaczyć koltrolkę, której zdarzenie dotyczy a następnie kliknąć na zakładkę Events (obok Properties) Klikając na przycisk oznaczony [...]otworzone zostanie okno w którym możliwe jest zmienienie nazwy, usunięcie obsługi zdarzenia. Zadania 1. Napisz program w którym za pomocą kontrolek jSlider modyfikowane będzie tło obiektu jPanel. Utwórz trzy obiekty jSlider dla każdej ze składowych koloru (RGB). Krańcowe wartości ustaw na 0 i 255. Dla każdego jSlidera dodaj obsługę zdarzenia Event/Change/StateChange. Przykładowy kod programu dla składowej R wygląda następująco: 4 2. Utwórz następującą formatkę 5