Java 在Mac上的NetBeans中使用AWT构建基本记事本

Java 在Mac上的NetBeans中使用AWT构建基本记事本,java,netbeans,awt,menubar,notepad,Java,Netbeans,Awt,Menubar,Notepad,此代码在Windows上运行良好,但在我的Macbook Air上运行不好。为什么?没有菜单栏可见;只有文本区域在输出中可见 import java.awt.*; public class Notepad extends Frame { public Notepad() { setTitle("Untitled-Notepad"); TextArea t1 = new TextArea(50,80); MenuBar mb =

此代码在Windows上运行良好,但在我的Macbook Air上运行不好。为什么?没有菜单栏可见;只有文本区域在输出中可见

import java.awt.*;

public class Notepad extends Frame {
    public Notepad()
    {
        setTitle("Untitled-Notepad");
        TextArea t1 = new TextArea(50,80);

        MenuBar mb = new MenuBar();
        Menu file = new Menu("File");
        MenuItem n1 = new MenuItem("New");

        file.add(n1);
        mb.add(file);
        setMenuBar(mb);

        add(t1);

        setSize(350,450);
        setVisible(true);
        setLayout(null);
    }

    public static void main(String[] args) {
        Notepad n = new Notepad();
    }
}

它出现在“系统菜单栏”中


请参见标题栏上方“记事本”旁边的内容。

您可以检查它是否没有出现在系统菜单栏中吗?您可以使用Swing或JavaFX,最终可能会得到您想要的结果,但坦率地说,系统菜单栏中出现的菜单栏是Mac用户首选的解决方案1)为什么要使用AWT?有关放弃AWT组件而支持Swing的许多好理由,请参阅。使用Swing的两个优点是a)Swing提供了支持富文本的组件,如
JTextPane
&b)方便的方法,如&。。。。2) Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作,在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或与布局填充和边框一起使用。3) 使用缩进代码行和代码块的逻辑和一致形式。缩进的目的是使代码的流程更易于遵循!哦,是的,谢谢!