Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2010, 18:50   #1
Akord
 
Регистрация: 07.12.2009
Сообщений: 8
По умолчанию Окно-окно-окно

Проблема такая. Нужно создать дочернее окно дочернего окна.
Вот тут создается одно дочернее окно от главного, а по логике дочернее окно от дочернего. Но идет ошибка в определении классов. Как решить проблему?

Код:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class TestFrame extends JFrame {
    public static void main(String[] args) {
        final TestFrame mf = new TestFrame();
        JPanel jp = new JPanel();
        JButton but = new JButton("First window");
        but.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                MainDialog md = new MainDialog(mf);
                md.setVisible(true);
            }
        });
        jp.add(but);
        mf.setContentPane(jp);
        mf.pack();

        mf.setVisible(true);
    }

    private static class MainDialog extends JDialog {
        public MainDialog(final TestFrame mf) {
            super(mf, true);
            JPanel panel = new JPanel();
            JButton okButton = new JButton("Second window");
            okButton.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                	OKDialog md = new OKDialog(mf);
                    mf.setVisible(false);
                }
            });
            panel.add(okButton);
            setContentPane(panel);
            pack();
        }
    }
}

private static class OKDialog extends JDialog {
    public OKDialog(final TestFrame mf) {
        super(mf, true);
        JPanel panel = new JPanel();
        JButton Button3 = new JButton("Third window");
        Button3.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                mf.setVisible(false);
            }
        });
        panel.add(Button3);
        setContentPane(panel);
        pack();
    }
}
}
Akord вне форума Ответить с цитированием
Старый 04.12.2010, 19:37   #2
alexinspir
Новичок
Джуниор
 
Аватар для alexinspir
 
Регистрация: 26.08.2008
Сообщений: 1,010
По умолчанию

лишняя фигурная скобка.
ромик0: Cколько получают здешние модераторы?
pu4koff: У модераторов сдельная оплата труда. Выдал предупреждение - плюс к премии. Выдал бан - лучший модератор месяца со всеми вытекающими.
alexinspir вне форума Ответить с цитированием
Старый 06.12.2010, 18:58   #3
Akord
 
Регистрация: 07.12.2009
Сообщений: 8
По умолчанию

скобка всего лишь опечатка. как сделать так чтобы из дочернего окна можно было вызвать еще одно?
Akord вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[?] Послать клавишу в чужое окно, не выводя окно на передний план. Moriarty Win Api 4 21.02.2011 05:11
Открывать окно печати, окно просмотра и изменять масштаб. segail Microsoft Office Excel 1 08.08.2010 19:31
Окно Sparky Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 23.11.2009 19:40
Окно Артэс Win Api 1 13.06.2008 20:45
«Окно+символ». Создать класс, представляющий окно в текстовом режиме. RustreX Паскаль, Turbo Pascal, PascalABC.NET 1 11.11.2007 19:28