我正在创建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();
}
}
答案 0 :(得分:93)
您可以在“帧初始化”下的构造函数中使用简单调用:
setResizable(false);
此调用后,窗口将无法调整大小。
答案 1 :(得分:12)
答案 2 :(得分:8)
只需在构造函数中写一行:
setResizable(false);
这将无法调整框架的大小。
答案 3 :(得分:7)
此代码可能会帮助您:[最大化并防止在JFrame上调整大小]
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setVisible(true);
frame.setResizable(false);
答案 4 :(得分:5)
它在东方使用:
frame.setResizable(false);
答案 5 :(得分:4)
以防万一有人不理解第六次:
setResizable(false);
答案 6 :(得分:3)
您可以使用this.setResizable(false);
或frameObject.setResizable(false);