radiobuttony, jlist - dodawanie usuwanie

0

witam. chciałbym zapytać jak zrobić tak by gdy jeden radiobutton jest wciśnięty to drugi się odznacza i na odwrót. próbowałem już funkcja isselected oraz np. radiobutton.selected == false, ale nic z tego bo podkreśla nazwę mojego radiobuttona na czerwono. chciałbym się ogólnie dowiedzieć jakich funkcji użyć i gdzie je wklepać.
druga sprawa do dodawanie do Jlista rzeczy po kliknięciu przycisku. działało by to tak ze w panelu1 znajduje się text field oraz button a w panelu 2 znajduje się jlist. chce zrobić tak ze po kliknięciu buttona wyciągany zostaje tekst z text fielda i dodany do jlista(imię + nazwisko + płeć dodana do jlista). Później tez chce po kliknięciu buttona w panelu 2 (tego obok lista) żeby zaznaczona pozycja się usunęła. Poniżej dodam screena jak to wszystko wygląda.

1

co do buttonów to zrób grupe radio buttonów (klasa ButtonGroup), nie dodawaj ich pojedynczo, wtedy klikajac jeden drugi sie odznaczy
co do list to prawde mówiąc nie pamietam, nie bawiłem się nimi :P

#edit
troche rozwlekle napisałem :P stworz obiekt ButtonGroup pod np zmienna "grupa" i do niej dodawaj poszczególne JRadioButton (tak to się robiło jeśli dobrze pamietam)
w razie czego obejrzyj a wszystko bedzie jasne:
polecam cala serie obejrzeć tego pana, wieeele sie rozjaśni z poziomu kodu, bo ze strony gui buildera wiele rzeczy umyka :)

znowu edit
http://docs.oracle.com/javase/tutorial/uiswing/components/list.html

0

ok, z radiobuttonami dałem radę. teraz trochę trudniejsza sprawa. mianowicie z list modelem. tak jak pisałem chcę po kliknięciu buttona a by wyjęto dane z komórek imie oraz nazwisko i wpisało do listy. dodam fragment kodu. błędu nie ma, ale po naciśnięciu przycisku nic się nie dzieje. Aha, no i usuwanie. wywala mnóstwo czerwonych błędów po naciśnięciu. nawet gdy dodam coś do listy "na sztywno"
fragment kodu:

J
final DefaultListModel model = new DefaultListModel();
Button usun = new JButton("Usu\u0144 \r\nzaznaczonego");
        usun.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {
                if (JOptionPane.showConfirmDialog(null,"Napewno usuąć?")==JOptionPane.YES_OPTION)
                {
                    
                     int zazn=listaosob.getSelectedIndex();           //////////ttuaj jest usuwanie, niestety nie działa.
                        model.remove(zazn);
                    ////to usuwa
                }
            }
        });
        usun.setFont(new Font("Comic Sans MS", Font.PLAIN, 11));
        GridBagConstraints gbc_usun = new GridBagConstraints();
        gbc_usun.fill = GridBagConstraints.VERTICAL;
        gbc_usun.gridx = 1;
        gbc_usun.gridy = 1;
        panel_2.add(usun, gbc_usun);
        
        ////////////////////////DEKLARACJA BUTTONA U SAMEJ GORY/////////////////////////////
        dodajosobe.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                 if(imie.getText().equals("") || nazwisko.getText().equals("")) ///////////////////wypisanie komunikatu z bledem jesli pola nie wypelnione
                     JOptionPane.showMessageDialog(null, "Niepoprawne dane. Uzupełnij imie lub nazwisko");
                
                 int pos = listaosob.getModel().getSize();
                    model.add(pos, imie.getText() + " " + nazwisko.getText()); ////////////// nie dodaje do listy po kliknieciu./ 
                 //    male.setSelected(false);
                    }
    
            
        });
        

1 użytkowników online, w tym zalogowanych: 0, gości: 1