我在java swing中创建了三个类(一个用于main,frame,用于面板)。添加组件后,它们在框架中不可见。为什么? [英] I have created three classes(one for main, frame, for panel) in java swing. After adding components they are not visible in the frame. Why?
本文介绍了我在java swing中创建了三个类(一个用于main,frame,用于面板)。添加组件后,它们在框架中不可见。为什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
//Main Class:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Order
{
public static void main(String[] args)
{
OrderFrame frame = new OrderFrame();
}
}
//Frame Class:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class OrderFrame extends JFrame
{
OrderFrame()
{
setTitle("Place Order");
setLayout(null);
setSize(500,500);
this.add(new OrderPanel());
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
//Panel Class:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class OrderPanel extends JPanel implements ActionListener
{
JLabel l1,l2;
JButton b1;
public OrderPanel()
{
l1 = new JLabel("Welcome to Online Food Delivery System");
b1 = new JButton("Close Window");
b1.addActionListener(this);
add(l1);
add(b1);
}
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
我的尝试:
我仍然要编写很多代码,但如果我运行Main Class(类名 - 顺序),我应该得到一个带有Label和按钮的GUI。但我得到一个空白的GUI。我尝试编写this.add(b1)和this.add(l1),但没有改变。我错过了什么?
What I have tried:
I still have to write a lot of code, but I if I run the Main Class(Class name - order) I should get a GUI with a Label and a button. But I get a blank GUI. I tried writing this.add(b1) and this.add(l1) but with no change. What am I missing?
推荐答案
我建议你阅读: Java JButton - javatpoint [ ^ ]
I'd suggest to read this: Java JButton - javatpoint[^]
import java.awt.event.*;
import javax.swing.*;
public class ButtonExample {
public static void main(String[] args) {
JFrame f=new JFrame("Button Example");
final JTextField tf=new JTextField();
tf.setBounds(50,50, 150,20);
JButton b=new JButton("Click Here");
b.setBounds(50,100,95,30);
b.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
tf.setText("Welcome to Javatpoint.");
}
});
f.add(b);f.add(tf);
f.setSize(400,400);
f.setLayout(null);
f.setVisible(true);
}
}
根据以上代码,你错过了这一行:
Based on above code, you missed this line:
jcontrol.setBounds(50,50, 150,20);
这篇关于我在java swing中创建了三个类(一个用于main,frame,用于面板)。添加组件后,它们在框架中不可见。为什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文