3个回答
展开全部
JDidalog有一个setBound()方法可以更改对话框的大小,示例如下:
package com.han;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
/**
* This program demonstrates the creation of a JDialog from a super-window.
* The created dialog is on the mode "Modal".
* @author han
*
*/
public class SwingJDialog {
public SwingJDialog(){
final JFrame jf=new JFrame("弹出窗体实验");
// Some methods defined by Toolkit query the native operating system directly.
Dimension screensize=Toolkit.getDefaultToolkit().getScreenSize();
int Swing1x=500;
int Swing1y=300;
jf.setBounds(screensize.width/2-Swing1x/2,screensize.height/2-Swing1y/2,Swing1x,Swing1y);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c=jf.getContentPane();
c.setBackground(Color.pink);
c.setLayout(null);
Dimension Swing1size=jf.getSize();
JButton jb=new JButton("弹出对话窗");
int jbx=100;
int jby=30;
jb.setBounds(Swing1size.width/2-jbx/2,Swing1size.height/2-jby/2,jbx,jby);
//jb.setBounds(Swing1x/2-jbx/2,Swing1y/2-jby/2,jbx,jby);
c.add(jb);
class Dialog1 {
JDialog jd=new JDialog(jf,"JDialog窗体",true);
Dialog1(){
jd.setSize(300,200);
Container c2=jd.getContentPane();
c2.setLayout(null);
JLabel jl=new JLabel("只是一个对话框");
jl.setBounds(0,-20,100,100);
JButton jbb=new JButton("确定");
jbb.setBounds(100,100,60,30);
c2.add(jl);
c2.add(jbb);
jbb.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
jd.dispose();
//System.exit(0);
}
});
System.out.println("OK");
jd.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
}
jb.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
new Dialog1().jd.setVisible(true);//弹出对话框
System.out.println("OK2");
}
});
System.out.println("OK3");
}
public static void main(String[] args){
new SwingJDialog();
}
}
展开全部
肯定可以用setBounds的。
setBounds的后两个参数,就是长度和高,你设置得大点,肯定是可行的。一般窗体、对话框只用setBounds方法。
setLocation和setSize这两个方法的综合其实就是JDialog。由于对话框处于屏幕下,所以本身不存在布局管理,直接用setBounds方法。
四个参数分别是:对话框左上角起点横坐标,对话框左上角起点纵坐标,对话框的长度,对话框的高。
要不你setVisable(true);一下就可见了。
setBounds的后两个参数,就是长度和高,你设置得大点,肯定是可行的。一般窗体、对话框只用setBounds方法。
setLocation和setSize这两个方法的综合其实就是JDialog。由于对话框处于屏幕下,所以本身不存在布局管理,直接用setBounds方法。
四个参数分别是:对话框左上角起点横坐标,对话框左上角起点纵坐标,对话框的长度,对话框的高。
要不你setVisable(true);一下就可见了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
setlocation和setsize试下行不行
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询