gpt4 book ai didi

java - 如何在 Java swing 中向窗口添加文本行?

转载 作者:行者123 更新时间:2023-11-30 07:27:03 26 4
gpt4 key购买 nike

我有一个 Java 类,它创建一个用户界面和一些白框,但是我想在这些框上添加几行文本。我尝试过 System.out.println("请从下拉菜单中选择一个区域或模型类型"); 但这不起作用。我的代码是

import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;

class MenuActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
System.out.println("Selected: " + e.getActionCommand());
}
}

public class testone{

public static void main(final String args[]) {
JFrame frame = new JFrame("test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JMenuBar menuBar = new JMenuBar();


// File Menu, F - Mnemonic
JMenu fileMenu = new JMenu("Areas");
fileMenu.setMnemonic(KeyEvent.VK_F);
menuBar.add(fileMenu);

// File->New, N - Mnemonic
JMenuItem newMenuItem = new JMenuItem("A1");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);

newMenuItem = new JMenuItem("A2");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);

newMenuItem = new JMenuItem("A3");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);

fileMenu = new JMenu("Types Of Models");
fileMenu.setMnemonic(KeyEvent.VK_F);
menuBar.add(fileMenu);

newMenuItem = new JMenuItem("T1");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);

newMenuItem = new JMenuItem("T2");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);

newMenuItem = new JMenuItem("T3");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);



frame.setJMenuBar(menuBar);
frame.setSize(1200, 650);
frame.setVisible(true);

// Set up subpanels
JPanel subPanel1 = new JPanel();
subPanel1.setPreferredSize (new Dimension(135, 135));
subPanel1.setBackground (Color.white);

JPanel subPanel2 = new JPanel();
subPanel2.setPreferredSize (new Dimension(135, 135));
subPanel2.setBackground (Color.white);

JPanel subPanel3 = new JPanel();
subPanel3.setPreferredSize (new Dimension (135, 135));
subPanel3.setBackground(Color.white);

JPanel subPanel4 = new JPanel();
subPanel4.setPreferredSize (new Dimension (135, 135));
subPanel4.setBackground(Color.white);

JPanel subPanel5 = new JPanel();
subPanel5.setPreferredSize (new Dimension (135, 135));
subPanel5.setBackground(Color.white);

JPanel subPanel6 = new JPanel();
subPanel6.setPreferredSize (new Dimension (135, 135));
subPanel6.setBackground(Color.white);

JPanel subPanel7 = new JPanel();
subPanel7.setPreferredSize (new Dimension (135, 135));
subPanel7.setBackground(Color.white);

JPanel subPanel8 = new JPanel();
subPanel8.setPreferredSize (new Dimension (135, 135));
subPanel8.setBackground(Color.white);

JPanel subPanel9 = new JPanel();
subPanel9.setPreferredSize (new Dimension (135, 135));
subPanel9.setBackground(Color.white);

JPanel subPanel10 = new JPanel();
subPanel10.setPreferredSize (new Dimension (135, 135));
subPanel10.setBackground(Color.white);

JPanel subPanel11 = new JPanel();
subPanel11.setPreferredSize (new Dimension (135, 135));
subPanel11.setBackground(Color.white);

JPanel subPanel12 = new JPanel();
subPanel12.setPreferredSize (new Dimension (135, 135));
subPanel12.setBackground(Color.white);

JPanel subPanel13 = new JPanel();
subPanel13.setPreferredSize (new Dimension (135, 135));
subPanel13.setBackground(Color.white);

JPanel subPanel14 = new JPanel();
subPanel14.setPreferredSize (new Dimension (135, 135));
subPanel14.setBackground(Color.white);

JPanel subPanel15 = new JPanel();
subPanel15.setPreferredSize (new Dimension (135, 135));
subPanel15.setBackground(Color.white);

JPanel subPanel16 = new JPanel();
subPanel16.setPreferredSize (new Dimension (135, 135));
subPanel16.setBackground(Color.white);

JPanel subPanel17 = new JPanel();
subPanel17.setPreferredSize (new Dimension (135, 135));
subPanel17.setBackground(Color.white);

JPanel subPanel18 = new JPanel();
subPanel18.setPreferredSize (new Dimension (135, 135));
subPanel18.setBackground(Color.white);

JPanel subPanel19 = new JPanel();
subPanel19.setPreferredSize (new Dimension (135, 135));
subPanel19.setBackground(Color.white);

JPanel subPanel20 = new JPanel();
subPanel20.setPreferredSize (new Dimension (135, 135));
subPanel20.setBackground(Color.white);

JPanel subPanel21 = new JPanel();
subPanel21.setPreferredSize (new Dimension (135, 135));
subPanel21.setBackground(Color.white);

JPanel subPanel22 = new JPanel();
subPanel22.setPreferredSize (new Dimension (135, 135));
subPanel22.setBackground(Color.white);

JPanel subPanel23 = new JPanel();
subPanel23.setPreferredSize (new Dimension (135, 135));
subPanel23.setBackground(Color.white);

JPanel subPanel24 = new JPanel();
subPanel24.setPreferredSize (new Dimension (135, 135));
subPanel24.setBackground(Color.white);

JPanel subPanel25 = new JPanel();
subPanel25.setPreferredSize (new Dimension (135, 135));
subPanel25.setBackground(Color.white);

JPanel subPanel26 = new JPanel();
subPanel26.setPreferredSize (new Dimension (135, 135));
subPanel26.setBackground(Color.white);

JPanel subPanel27 = new JPanel();
subPanel27.setPreferredSize (new Dimension (135, 135));
subPanel27.setBackground(Color.white);

JPanel subPanel28 = new JPanel();
subPanel28.setPreferredSize (new Dimension (135, 135));
subPanel28.setBackground(Color.white);

JPanel subPanel29 = new JPanel();
subPanel29.setPreferredSize (new Dimension (135, 135));
subPanel29.setBackground(Color.white);

JPanel subPanel30 = new JPanel();
subPanel30.setPreferredSize (new Dimension (135, 135));
subPanel30.setBackground(Color.white);

JPanel subPanel31 = new JPanel();
subPanel31.setPreferredSize (new Dimension (135, 135));
subPanel31.setBackground(Color.white);

JPanel subPanel32 = new JPanel();
subPanel32.setPreferredSize (new Dimension (135, 135));
subPanel32.setBackground(Color.white);

JPanel subPanel33 = new JPanel();
subPanel33.setPreferredSize (new Dimension (135, 135));
subPanel33.setBackground(Color.white);

JPanel subPanel34 = new JPanel();
subPanel34.setPreferredSize (new Dimension (135, 135));
subPanel34.setBackground(Color.white);

JPanel subPanel35 = new JPanel();
subPanel35.setPreferredSize (new Dimension (135, 135));
subPanel35.setBackground(Color.white);

JPanel subPanel36 = new JPanel();
subPanel36.setPreferredSize (new Dimension (135, 135));
subPanel36.setBackground(Color.white);

// Set up primary panel
JPanel primary = new JPanel();
primary.setBackground (Color.lightGray);
primary.add (subPanel1);
primary.add (subPanel2);
primary.add (subPanel3);
primary.add (subPanel4);
primary.add (subPanel5);
primary.add (subPanel6);
primary.add (subPanel7);
primary.add (subPanel8);
primary.add (subPanel9);
primary.add (subPanel10);
primary.add (subPanel11);
primary.add (subPanel12);
primary.add (subPanel13);
primary.add (subPanel14);
primary.add (subPanel15);
primary.add (subPanel16);
primary.add (subPanel17);
primary.add (subPanel18);
primary.add (subPanel19);
primary.add (subPanel20);
primary.add (subPanel21);
primary.add (subPanel22);
primary.add (subPanel23);
primary.add (subPanel24);
primary.add (subPanel25);
primary.add (subPanel26);
primary.add (subPanel27);
primary.add (subPanel28);
primary.add (subPanel29);
primary.add (subPanel30);
primary.add (subPanel31);
primary.add (subPanel32);
primary.add (subPanel33);
primary.add (subPanel34);
primary.add (subPanel35);
primary.add (subPanel36);

frame.getContentPane().add(primary);
frame.pack();
frame.setVisible(true);
}
}

我想添加的是一些说明,如果人们想使用它,那么他们就知道该怎么做,而无需一直被告知。

最佳答案

I want to put a few lines of text about the boxes

我建议向窗口添加一个JLabel

在添加最后一个子面板后将其添加到代码中 primary.add(subPanel36); :

JPanel container = new JPanel();
JLabel lblAboutBoxes = new JLabel("Please select an Area or a Type Of Model from the drop down menus");
lblAboutBoxes.setHorizontalAlignment(JLabel.CENTER);
lblAboutBoxes.setFont(new Font("Courier New", Font.BOLD, 22));
container.setLayout(new BoxLayout(container, BoxLayout.Y_AXIS));
container.add(lblAboutBoxes);
container.add(primary);

并替换

frame.getContentPane().add(primary); 

frame.getContentPane().add(container);

输出:

enter image description here

关于java - 如何在 Java swing 中向窗口添加文本行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36679097/

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