哥么我刚刚学习java,老师说在java2中,frame的显示语句用setvisible()吧,
我说的不一定对呀
别见怪

解决方案 »

  1.   

    我的java不怎么样,你要的
    画面我写出来了,不过不知道所以然。谁知道解释吧
    import java.awt.*;
    import javax.swing.*;class Untitled1
        extends JFrame {
      JButton button;
      public Untitled1() {
        button = new JButton();
        button.setText("1");
        button.setFont(new Font("cur",Font.PLAIN,9));
        button.setBounds(0, 0, 36, 36);
        JPanel buttonBox = new JPanel();
        buttonBox.setBorder(null);
        buttonBox.add(button);    this.getContentPane().add(buttonBox,"West");
        setSize(300, 400);
      }  public static void main(String args[]) {
        JFrame nn = new Untitled1();
        nn.setVisible(true);
      }
    }
      

  2.   

    其实你可以用button.setLocation(0,0,30,30);来设置按钮的位置。
      

  3.   

    谢谢指点啊,可是我要的不是你说的那样的效果。以你的效果的话那大小不是36*36的啊!
    那是矩形啊。我要的是大小固定而且CAPTION也要显示出来。
    你认为呢楼上的yongjin(Slice)兄弟。
    还有用setLocation()没法设定按钮的大小的。还是没有解决问题的!
      

  4.   

    我试了试
    确实是这样
    建议放弃setBounds();
    改用gridbaglayout布局方式
    它可以控制大小也可以定义位置
    如果你现在这么做是为了布局的美观,也没必要这样
    以为对于位置,可以用一些面板来组合,
    不一定要用绝对定位,虽然这样比较容易理解和操作
    因为用现在这种方式设定了大小后,标题就无法显示
    可能是标题的显示空间和格式被这种大小给破坏了,而且它自己无法完成调整
    我试过用Flowlayout布局,可以显示数字,而且按纽大小和你设置的差不多,虽然不是矩形
    改用GridbagLayout布局,按纽可以按比例缩放,也可以定义位置
    应该对于标题的显示可以调整吧!
      

  5.   

    我自己把问题解决了啊!import javax.swing.*;
    import java.awt.*;public class SwingTest extends JFrame{
      JButton button;
      public SwingTest(){
       button=new JButton("1");
       button.setFont(new Font("cur",Font.PLAIN,5));
       getContentPane().setLayout(null);
       button.setBounds(0,0,30,30);
       button.setMargin(new Insets(0,0,0,0));   //关键点:这是让文字在上面的显示约束为0
       getContentPane().add(button);
       setSize(300,400);
       show();
       }
      public static void main(String args[]){
       new SwingTest();
      }
    }谢谢大家对我的支持啊!还有用GridLayout约束的时候按钮大小 小于35*35的时候字是没法显示的,只有用setMargin()方法才好使。