21xrx.com
2024-11-22 07:56:51 Friday
登录
文章检索 我的文章 写文章
Java图形界面设计及代码案例
2023-06-16 15:19:02 深夜i     --     --
Java 图形界面 设计 代码 窗体 组件 布局管理器

Java是一种面向对象的编程语言,与图形界面的设计十分擅长,可以创建各种样式、主题和功能的应用程序。本文将介绍如何使用Java图形界面设计创建窗体,并提供代码案例供读者借鉴学习。

1. 创建窗体

在Java中,我们可以使用JFrame类创建窗体。以下是创建一个简单窗体的代码示例。在代码中,我们创建了一个JFrame对象,设置它的大小、标题、关闭操作和可见性。


import javax.swing.JFrame;

public class MyFrame extends JFrame {

  public MyFrame() {

    setSize(300, 200);

    setTitle("My Frame");

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    setVisible(true);

  }

  public static void main(String[] args) {

    new MyFrame();

  }

}

2. 添加组件

创建窗体只是开始,我们还需向窗体中添加组件,例如按钮、标签、文本框等。以下是添加一个标签和一个按钮的代码示例。在代码中,我们创建了一个JLabel对象和一个JButton对象,将它们添加到窗体中。


import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class MyFrame extends JFrame {

  private JLabel label;

  private JButton button;

  public MyFrame() {

    setSize(300, 200);

    setTitle("My Frame");

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    label = new JLabel("Hello World");

    button = new JButton("Click Me");

    add(label);

    add(button);

    setVisible(true);

  }

  public static void main(String[] args) {

    new MyFrame();

  }

}

3. 布局管理器

添加组件后,我们需要使用布局管理器来控制它们的位置和大小。Java提供了多种布局管理器,例如FlowLayout、BorderLayout、GridLayout和BoxLayout等。以下是使用BorderLayout布局管理器创建窗体和添加组件的代码示例。


import java.awt.BorderLayout;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class MyFrame extends JFrame {

  private JLabel label;

  private JButton button1, button2, button3, button4, button5;

  public MyFrame() {

    setSize(400, 300);

    setTitle("My Frame");

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    label = new JLabel("Hello World");

    button1 = new JButton("North");

    button2 = new JButton("South");

    button3 = new JButton("East");

    button4 = new JButton("West");

    button5 = new JButton("Center");

    add(label, BorderLayout.NORTH);

    add(button1, BorderLayout.WEST);

    add(button2, BorderLayout.EAST);

    add(button3, BorderLayout.SOUTH);

    add(button4, BorderLayout.CENTER);

    setVisible(true);

  }

  public static void main(String[] args) {

    new MyFrame();

  }

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复