Computer >> Máy Tính >  >> Lập trình >> Java

Làm cách nào chúng ta có thể thu nhỏ / tối đa hóa một JFrame theo lập trình trong Java?


A JFrame lớp là một lớp con của Frame lớp và các thành phần được thêm vào khung được gọi là nội dung của nó, những thành phần này được quản lý bởi contentPane . JFrame chứa một cửa sổ có tiêu đề, đường viền, menu ba r thành phần dành riêng cho người dùng . Theo mặc định, chúng ta có thể thu nhỏ JFrame bằng cách nhấp vào nút thu nhỏ và phóng to JFrame bằng cách nhấp vào nút phóng to ở vị trí trên cùng bên phải của màn hình. Chúng tôi cũng có thể thực hiện theo chương trình bằng cách sử dụng setState ( JFrame.ICONIFIED) để thu nhỏ JFrame và setState ( JFrame.MAXIMIZED_BOTH) để tối đa hóa JFrame.

Ví dụ

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JFrameIconifiedTest extends JFrame implements ActionListener {
   private JButton iconifyButton, maximizeButton;
   public JFrameIconifiedTest() {
      setTitle("JFrameIconified Test");
      iconifyButton = new JButton("JFrame Iconified");
      add(iconifyButton, BorderLayout.NORTH);
      iconifyButton.addActionListener(this);
      maximizeButton = new JButton("JFrame Maximized");
      add(maximizeButton, BorderLayout.SOUTH);
      maximizeButton.addActionListener(this);
      setSize(400, 275);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public void actionPerformed(ActionEvent ae) {
      if(ae.getSource().equals(iconifyButton)) {
         setState(JFrame.ICONIFIED); // To minimize a frame
      } else if(ae.getSource().equals(maximizeButton)) {
         setExtendedState(JFrame.MAXIMIZED_BOTH); // To maximize a frame
      }
   }
   public static void main(String args[]) {
      new JFrameIconifiedTest();
   }
}

Đầu ra

Làm cách nào chúng ta có thể thu nhỏ / tối đa hóa một JFrame theo lập trình trong Java?

Trong chương trình trên, nếu chúng ta nhấp vào "JFrame Iconified" , khung được thu nhỏ và nhấp vào "JFrame Maximized" , khung được phóng to tối đa.