java如何为对话框添加按钮,以及如何为按钮添加事件?
publicclassDel{JTextFieldpathField;JFramedelFrame;publicstaticvoidmain(String[]args){...
public class Del
{
JTextField pathField;
JFrame delFrame;
public static void main(String[] args)
{
new Del ();
}
public Del ()
{
frameDel();
}
public void frameDel()
{
delFrame=new JFrame("文件删除器");
delFrame.setBounds(150, 150, 500, 200);
delFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
delFrame.setVisible(true);
delFrame.setLayout(null);
Container con=delFrame.getContentPane();
con.setBounds(0, 0, 400, 200);
con.setBackground(new Color(222,111,111));
con.setLayout(null);
pathField=new JTextField();
pathField.setBounds(30, 30, 250, 30);
con.add(pathField);
JButton delButton=new JButton("删除");
delButton.setBounds(350, 30, 60, 30);
con.add(delButton);
delButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
delFile(pathField.getText());
}
});
delFrame.validate();
delFrame.repaint();
}
public void delFile(String path)
{
File goalFile=new File(path);
if(goalFile.exists())
{
goalFile.delete();
Dialog completeDialog=new Dialog(delFrame,"删除结果提示");
completeDialog.setSize(50, 20);
completeDialog.setVisible(true);
completeDialog.setBounds(250,250, 150, 90);
completeDialog.setModal(true);
JButton testButton=new JButton("继续删除");
completeDialog.add(testButton);
JButton testButton2=new JButton("退出");
completeDialog.add(testButton2);
pathField.setText("文件删除成功!");
}
else
{
pathField.setText("文件不存在!");
}
}
}
像我这个例子,如何为对话框添加两个按钮,又如何为按钮添加事件呢?我刚开始学Dialog,什么都不懂,连setSize()怎么用都不知道。所以请大家给我讲基础一点,不要太深奥,谢谢。
请讲详细点好吗?我现在就是不知道怎样给对话框加按钮和事件,请大家在我的代码基础上改一下给我讲,这样可能容易理解一点。 我把分提高了,只要大家能给我讲懂,想要多少分请留言。
con是delFrame上的面板,我现在是要在对话框上面加按钮。怎么能把对话框上的按钮添加上到con上呢?
这样吧,我的代码里面有两个要添加到对话框上的按钮,你把代码全部抄下去给我改一下,实现我想要的功能,这样可能要容易理解一点。 展开
{
JTextField pathField;
JFrame delFrame;
public static void main(String[] args)
{
new Del ();
}
public Del ()
{
frameDel();
}
public void frameDel()
{
delFrame=new JFrame("文件删除器");
delFrame.setBounds(150, 150, 500, 200);
delFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
delFrame.setVisible(true);
delFrame.setLayout(null);
Container con=delFrame.getContentPane();
con.setBounds(0, 0, 400, 200);
con.setBackground(new Color(222,111,111));
con.setLayout(null);
pathField=new JTextField();
pathField.setBounds(30, 30, 250, 30);
con.add(pathField);
JButton delButton=new JButton("删除");
delButton.setBounds(350, 30, 60, 30);
con.add(delButton);
delButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
delFile(pathField.getText());
}
});
delFrame.validate();
delFrame.repaint();
}
public void delFile(String path)
{
File goalFile=new File(path);
if(goalFile.exists())
{
goalFile.delete();
Dialog completeDialog=new Dialog(delFrame,"删除结果提示");
completeDialog.setSize(50, 20);
completeDialog.setVisible(true);
completeDialog.setBounds(250,250, 150, 90);
completeDialog.setModal(true);
JButton testButton=new JButton("继续删除");
completeDialog.add(testButton);
JButton testButton2=new JButton("退出");
completeDialog.add(testButton2);
pathField.setText("文件删除成功!");
}
else
{
pathField.setText("文件不存在!");
}
}
}
像我这个例子,如何为对话框添加两个按钮,又如何为按钮添加事件呢?我刚开始学Dialog,什么都不懂,连setSize()怎么用都不知道。所以请大家给我讲基础一点,不要太深奥,谢谢。
请讲详细点好吗?我现在就是不知道怎样给对话框加按钮和事件,请大家在我的代码基础上改一下给我讲,这样可能容易理解一点。 我把分提高了,只要大家能给我讲懂,想要多少分请留言。
con是delFrame上的面板,我现在是要在对话框上面加按钮。怎么能把对话框上的按钮添加上到con上呢?
这样吧,我的代码里面有两个要添加到对话框上的按钮,你把代码全部抄下去给我改一下,实现我想要的功能,这样可能要容易理解一点。 展开
4个回答
展开全部
问题补充做打
首先楼主你的Dialog
其实已经添加了按钮,只不过一开始没有显示
你需要用鼠标拖动一下对话框,才能显示按钮,
第二添加事件监听就象我以前说的一样
使用的是btn.addActionListener(new ActionListener(){
事件代码
});
我补充了一下你的代码
如下:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dialog;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Del {
JTextField pathField;
JFrame delFrame;
JPanel panel;
Dialog completeDialog;
public static void main(String[] args) {
new Del();
}
public Del() {
frameDel();
}
public void frameDel() {
delFrame = new JFrame("文件删除器");
delFrame.setBounds(150, 150, 500, 200);
delFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
delFrame.setVisible(true);
delFrame.setLayout(null);
panel = new JPanel();
Container con = delFrame.getContentPane();
con.setBounds(0, 0, 400, 200);
con.setBackground(new Color(222, 111, 111));
con.setLayout(null);
pathField = new JTextField();
pathField.setBounds(30, 30, 250, 30);
con.add(pathField);
JButton delButton = new JButton("删除");
delButton.setBounds(350, 30, 60, 30);
con.add(delButton);
delButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
delFile(pathField.getText());
}
});
delFrame.validate();
delFrame.repaint();
}
public void delFile(String path) {
File goalFile = new File(path);
if (goalFile.exists()) {
goalFile.delete();
completeDialog = new Dialog(delFrame, "删除结果提示");
completeDialog.setVisible(true);
completeDialog.setBounds(250, 250, 250, 90);
completeDialog.setModal(true);
JButton testButton = new JButton("继续删除");
JButton testButton2 = new JButton("退出");
completeDialog.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
testButton2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
testButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
completeDialog.setVisible(false);
}
});
panel.add(testButton,BorderLayout.WEST);
panel.add(testButton2,BorderLayout.EAST);
completeDialog.add(panel,BorderLayout.CENTER);
pathField.setText("文件删除成功!");
} else {
pathField.setText("文件不存在!");
}
}
}
不过缺点在于以显示的时候只有一个对话框,没有按钮,只有用鼠标拖动对话框的大小后才能显示按钮,我这个在找方法,希望你能找到方法解决,我对javaGUI学的不深,希望有哪位大侠可以给个方法解决一下一开始不显示按钮的问题
首先楼主你的Dialog
其实已经添加了按钮,只不过一开始没有显示
你需要用鼠标拖动一下对话框,才能显示按钮,
第二添加事件监听就象我以前说的一样
使用的是btn.addActionListener(new ActionListener(){
事件代码
});
我补充了一下你的代码
如下:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dialog;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Del {
JTextField pathField;
JFrame delFrame;
JPanel panel;
Dialog completeDialog;
public static void main(String[] args) {
new Del();
}
public Del() {
frameDel();
}
public void frameDel() {
delFrame = new JFrame("文件删除器");
delFrame.setBounds(150, 150, 500, 200);
delFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
delFrame.setVisible(true);
delFrame.setLayout(null);
panel = new JPanel();
Container con = delFrame.getContentPane();
con.setBounds(0, 0, 400, 200);
con.setBackground(new Color(222, 111, 111));
con.setLayout(null);
pathField = new JTextField();
pathField.setBounds(30, 30, 250, 30);
con.add(pathField);
JButton delButton = new JButton("删除");
delButton.setBounds(350, 30, 60, 30);
con.add(delButton);
delButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
delFile(pathField.getText());
}
});
delFrame.validate();
delFrame.repaint();
}
public void delFile(String path) {
File goalFile = new File(path);
if (goalFile.exists()) {
goalFile.delete();
completeDialog = new Dialog(delFrame, "删除结果提示");
completeDialog.setVisible(true);
completeDialog.setBounds(250, 250, 250, 90);
completeDialog.setModal(true);
JButton testButton = new JButton("继续删除");
JButton testButton2 = new JButton("退出");
completeDialog.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
testButton2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
testButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
completeDialog.setVisible(false);
}
});
panel.add(testButton,BorderLayout.WEST);
panel.add(testButton2,BorderLayout.EAST);
completeDialog.add(panel,BorderLayout.CENTER);
pathField.setText("文件删除成功!");
} else {
pathField.setText("文件不存在!");
}
}
}
不过缺点在于以显示的时候只有一个对话框,没有按钮,只有用鼠标拖动对话框的大小后才能显示按钮,我这个在找方法,希望你能找到方法解决,我对javaGUI学的不深,希望有哪位大侠可以给个方法解决一下一开始不显示按钮的问题
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主要就是用eventListener加事件,用.add();加按钮
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看来这100分是赚不到了.....
因为很久都没写这东西了...
因为很久都没写这东西了...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
自己去查API里面用法什么的都有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询