当前位置:  开发笔记 > 编程语言 > 正文

JFrame:如何禁用窗口大小调整?

如何解决《JFrame:如何禁用窗口大小调整?》经验,为你挑选了7个好方法。

我正在创建一个JFrame,我称之为方法setSize(500, 500).现在,期望的行为是用户不应在任何条件下调整JFrame的大小.通过最大化或拖动边框.它应该是500x500.我该怎么做?我还附上了代码,以防你可以更好地指导我.

    package com.techpapa;    
    import javax.swing.*;  
    import java.awt.*;  
    import java.awt.event.*;  

    public class MainWindow extends JFrame{


private JTextField
            write;
private JRadioButton
            rb1,
            rb2,
            rb3;
private ButtonGroup
            bg;

private ActionListener al = new ActionListener(){
    public void actionPerformed(ActionEvent e){
        write.setText("JRadioButton : " + ((JRadioButton)e.getSource()).getText());
    }

};

public MainWindow(){
    //Frame Initialization
    setSize(500, 500);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setLayout(null);
    setTitle(".:JRadioButton:.");
    setVisible(true);

    //Components Initialization
    write = new JTextField(20);
    write.setEditable(false);
    rb1 = new JRadioButton("Male", false);
    rb1.addActionListener(al);
    rb2 = new JRadioButton("Female", false);
    rb2.addActionListener(al);
    rb3 = new JRadioButton("I don't want to specify", true);
    rb3.addActionListener(al);
    bg = new ButtonGroup();

    //Add radio buttons to buttongroup
    bg.add(rb1); bg.add(rb2); bg.add(rb3);

    //Add to window
    add(write);
    write.setBounds(140, 100, 150, 20);
    write.setDragEnabled(true);
    add(rb1);
    rb1.setBounds(180, 200, 100, 30);
    add(rb2);
    rb2.setBounds(180, 225, 100, 30);
    add(rb3);
    rb3.setBounds(180, 250, 130, 30);

}

public static void main(String[] args) {
    new MainWindow();

}

}

tbodt.. 99

您可以在"框架初始化"下的构造函数中使用简单调用:

setResizable(false);

在此调用之后,窗口将不可调整大小.



1> tbodt..:

您可以在"框架初始化"下的构造函数中使用简单调用:

setResizable(false);

在此调用之后,窗口将不可调整大小.



2> mael..:

在JFrame上使用setResizable

yourFrame.setResizable(false);

但扩展JFrame通常是一个坏主意.


@tbodt:扩展JFrame时,您的方法与JFrame方法位于同一列表中.使用JFrame时,您的方法与JFrame方法是分开的.如果要覆盖一个或多个类方法,则只应扩展任何类.继承的构成.
是啊.这意味着你的答案被接受了.顺便说一下,设计模式很重要.
这通常是糟糕的设计.如果您不扩展JFrame功能(通常就是这种情况),那么在类中使用JFrame属性是更好的设计.

3> Ipsit Gaur..:

只需在构造函数中写一行:

setResizable(false);

这将使得无法调整框架的大小.



4> Butani Vijay..:

此代码可能会帮助您:[最大化和防止在JFrame上调整大小]

frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setVisible(true);
frame.setResizable(false);



5> Yaroslav..:

以防万一有人不了解第六次:

setResizable(false);



6> Caffe Latte..:

它在东方用途:

  frame.setResizable(false);



7> Deepak S. Ga..:

您可以使用this.setResizable(false);frameObject.setResizable(false);

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有