Используйте другие классы JFrame - PullRequest
0 голосов
/ 05 января 2012

Я пытался найти его, но я не знаю, какую терминологию использовать, поэтому не получаю результатов. По сути, у меня есть JFrame, созданный в одном классе, который ничего не наследует, но есть два класса, которые в него входят: Farmer.java и SheepHandlerThread.java. Я хочу использовать JFrame, созданный в начальном классе, и добавить несколько дополнительных фигур и объектов к этому, когда SheepHandlerThread обрабатывает выпас овец и поведение, а Farmer.java контролирует квадрат, который перемещается в позицию щелчка мыши.

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

Спасибо, Райан

Ответы [ 2 ]

2 голосов
/ 05 января 2012

Я согласен с ответом выше. В дополнение к этому я привожу пример, который поможет вам.

class FrameDemo{

    private JFrame frame;
    private SheepHandlerThread sheepHandlerThread;
    private Farmer farmer;

    public FrameDemo(){
       initComponents();
    }

    private void initComponents() {
        frame = new JFrame(...);
        /* Pass frame reference to the 
           Farmer and SheepHandlerThread
           class    
            */
      farmer = new Farmer(frame);
      sheepHandlerThread = new SheepHandlerThread(frame);   
    }

}
1 голос
/ 05 января 2012

Два объекта должны каким-то образом иметь ссылку на JFrame объект .При создании двух объектов передайте им объект JFrame.Затем конструктор может сохранить фрейм в поле экземпляра и делать с ним все, что захочет, когда захочет.

Или эти объекты не должны быть связаны с пользовательским интерфейсом и должны предоставлять услуги толькоРамка.В этом случае попросите, чтобы фрейм вызвал эти сервисы и обновил себя результатом этих сервисов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...