2014-10-24 3 views
0

Некоторое время назад я написал код в одном основном классе, который работал нормально. Позже я добавил JPanel и JFrame Вновь его единственный основной он снова работал отлично.Java Swing Использование нескольких пакажей/классов

Теперь я пытаюсь сломать код и переместить их в пакеты.

вот мой главный - (ЦСИ/старт/Main.java) -

package start; 
import javax.swing.JFrame; 
import frames.*; 
public class Main { 

    public static void main(String[] args) { 
     MainFrame.createFrame(); 
     LogoPanel.createLogoPanel();  //this line is the problem 
    } 
} 

здесь MainFrame - (SRC/кадров/MainFrame.java) -

package frames; 
import javax.swing.JFrame; 
public class MainFrame { 

    public static JFrame createFrame() { 
     JFrame frame = new JFrame ("App"); 
     frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
     frame.setResizable(false); 
     frame.setBounds(140,140, 1000, 580); 
     frame.setVisible(true); 
     frame.setLayout(null); 
     return frame; 
    } 

} 

здесь является LogoPanel
- (SRC/кадров/LogoPanel.java) -

package frames; 

import java.awt.Color; 
import javax.swing.JFrame; 
import javax.swing.JPanel; 

public class LogoPanel { 

    public static JPanel createLogoPanel(JFrame frame) { 
     JPanel logoPanel = new JPanel(); 
     logoPanel.setVisible(true); 
     logoPanel.setBounds(0, 0, 1000, 80); 
     logoPanel.setBackground(Color.gray); 
     logoPanel.setLayout(null); 
     frame.add(logoPanel); 
     return logoPanel; 
    } 

} 

как я сказал LogoPanel.createLogoPanel(); это проблема. Он не принимает createLogoPanel (рамка JFrame) от меня? установка его на нуль не отображает панель вообще. в любом случае я могу сделать эту работу?

ответ

2

Ваш createLogoPanel принимает аргумент типа JFrame.

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

ли что-то вдоль линий:

JFrame frame = MainFrame.createFrame(); 
    LogoPanel.createLogoPanel(frame);  

Эта ошибка, кажется, указывают на отсутствие понимания основного синтаксиса и концепций Java. Если вы сможете накопить знания в этой области, это принесет вам большую пользу в будущем.

+0

yup works! Я не знал, как передать аргумент ... – S3P3HR

+0

Он называется аргументом метода или параметром. Опять же, надеюсь, вы учтете мой совет. – Thihara

Смежные вопросы