gpt4 book ai didi

java - 需要帮助定位实验室的 Java GUI 组件

转载 作者:行者123 更新时间:2023-12-02 08:29:45 25 4
gpt4 key购买 nike

我目前正在大学参加客户端/服务器编程类(class)(即 Java 2)。对于我们的第一个实验作业,我们被要求创建一个简单的 GUI 来模拟基本的即时消息聊天客户端。该客户端不会有任何实际功能,只有一个简单的窗口。但是,该窗口必须与我的教授为 Visual Basic 类(class)开发的窗口类似。现在,我知道以我的基础知识,我永远无法让我的代码看起来完全像示例,但我希望尽可能接近尽可能。

我真正的问题是:我应该使用什么 LayoutManager (或其组合)来尽可能接近这个?我只将前几个组件放入我的实验室项目中,但我很好奇我是否做得正确……或者我是否使用了最聪明的方法。感谢您的帮助!

编辑:哦,在我忘记之前,这是我现在已经拥有的示例代码。闲暇时把它拆开!欢迎对我的代码和我尝试过的方法提出任何批评!

import java.awt.*;
import javax.swing.*;

public class Chat {
public static void main(String[] args) {
/*
* The main() method is what creates the Frame for use by the user. It set's a default size to 300x600,
* which is a pretty standard size for a chat client. It also adds a title to the Frame, which adds a
* cool element there!
*/
ChatClient GUI = new ChatClient();
GUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GUI.setSize(300, 600);
GUI.setTitle("Lab 1: Chat");
GUI.setVisible(true);
GUI.start();
}
}

class ChatClient extends JFrame {
public void start() {
setLayout(new BorderLayout());

/*
* Divide the main Frame into three separate Panels. The North Panel holds the username, server, and port
* information, along with the associated Buttons.
*/

JPanel northPanelGroup = new JPanel(new GridLayout(3, 3, 1, 1));
JPanel centerPanelGroup = new JPanel(new GridLayout(1, 1, 1, 1));
JPanel southPanelGroup = new JPanel(new GridLayout(1, 3, 1, 1));

/*
* Obviously, add the Panel Groups into the main Frame
*/
add(BorderLayout.NORTH, northPanelGroup);
add(BorderLayout.CENTER, centerPanelGroup);
add(BorderLayout.SOUTH, southPanelGroup);

/*
* Begin adding the username, server, and port information into the North Panel
*/
JPanel usernamePanel = new JPanel();
usernamePanel.add(new JLabel("Username"));
usernamePanel.add(new JTextField(10));
northPanelGroup.add(usernamePanel);

JPanel serverPanel = new JPanel();
serverPanel.add(new JLabel("Server"));
serverPanel.add(new JTextField(10));
northPanelGroup.add(serverPanel);

JPanel portPanel = new JPanel();
portPanel.add(new JLabel("Port"));
portPanel.add(new JTextField(5));
northPanelGroup.add(portPanel);
}
}

最佳答案

您应该在 Netbeans IDE 中使用 Mattise如果您在创建 GUI 时遇到问题:) 老实说,如果您想以编程方式完成它,您应该看看 MigLayout ( http://www.miglayout.com/ ),它是最简单、最灵活的布局管理器。

http://blogs.sun.com/roumen/resource/matisse6.PNG

关于java - 需要帮助定位实验室的 Java GUI 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3731711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com