Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MDI пример не работает 
V
    Опции темы
НовыйСтиль
  Дата 2.1.2011, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 24.12.2010
Где: Брест

Репутация: нет
Всего: нет



Искал в нете пример, как сделать дочернии фреймы внутри родительского. В итоге нашёл такой пример:

Код

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Main extends JFrame
{
    Container container;
    JButton add;
    JToolBar toolbar;
    private JDesktopPane desktop;
    JPanel panel;
    public Main() 
    {
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        add = new JButton("Добавить");
        add.addActionListener(new myButtonAction());
        toolbar = new JToolBar(JToolBar.HORIZONTAL);
        toolbar.add(add);
        desktop = new JDesktopPane();
        add(BorderLayout.CENTER, desktop);
        add(BorderLayout.NORTH, toolbar);
        setMinimumSize(new Dimension(640, 480));
        setPreferredSize(getMinimumSize());
        setVisible(true);
    }
    public static void main(String[] args) 
    {
        new Main();
    }
    class myButtonAction implements ActionListener
    {
        public void actionPerformed(ActionEvent e) 
        {
            Internal internal = new Internal();
            desktop.add(internal);
            internal.show();
        }
    }
}


и дополнительный класс

Код

import java.beans.PropertyVetoException;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Internal extends JInternalFrame
{
    public Internal() 
    {
        super("internal", true, true, true, true);
        setMinimumSize(new Dimension(200, 100));
        setPreferredSize(getMinimumSize());
        setVisible(true);
        try 
        {
            setSelected(true);
        } 
        catch (PropertyVetoException ex) 
        {
        }
}

}


Я прошёлся по коду не понял почему не работает.

В итоге запускается окно с менюшкой. Есть кнопка добавить. На него навешано событие(в дебагире проверял, срабатывает). Но окно новое не появляется.
PM MAIL ICQ Skype   Вверх
jk1
Дата 3.1.2011, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 21
Всего: 75



Новое окно появляется, в отладчике это видно. Другое дело, что оно не отрисовывается, вот исправленный вариант:
Код

public class Internal extends JInternalFrame {
    public Internal() {
        super("internal", true, true, true, true);
        setMinimumSize(new Dimension(200, 100));
        setPreferredSize(getMinimumSize());
        setVisible(true);
        try {
            setSelected(true);
        }
        catch (PropertyVetoException ex) {
        }

        this.pack();
    }
}


Да, кстати, вызов show() эквивалентен комбинации setVisible(true) + setSelected(true). Поэтому вызывать одно за другим особого смысла не имеет.


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
НовыйСтиль
Дата 3.1.2011, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 24.12.2010
Где: Брест

Репутация: нет
Всего: нет



спасибо, помогло.
PM MAIL ICQ Skype   Вверх
НовыйСтиль
Дата 4.1.2011, 03:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 24.12.2010
Где: Брест

Репутация: нет
Всего: нет



jk1, а какие книги можно почитать именно по Java GUI и Java FX? не отвлекаясь на основы Java.
PM MAIL ICQ Skype   Вверх
jk1
Дата 4.1.2011, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 21
Всего: 75



НовыйСтиль, 

Этот вопрос недавно обсуждался здесь, там много ссылок на хорошие книги.
Сам я предпочитаю вот этот источник, все-таки ман от производителя.

В любом случае, на основы лучше бы обратить внимание - это сэкономит Вам много часов на поиске глупых ошибок в коде. На собеседованиях, кстати, тоже любят спрашивать "из основ", так что знать такие вещи еще и выгодно по деньгам smile 


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
НовыйСтиль
Дата 4.1.2011, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 24.12.2010
Где: Брест

Репутация: нет
Всего: нет



у меня по основам от тэч есть видео уроки, там и по оконному программированию есть + потом аплеты.
если кому интересно будет, потом ссылку выложу.

да и устраиваться по яве пока не собираюсь, чисто сам на себя поработать
на работе я пишу на Delphi+Cache
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0654 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.