首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使JFrame和JMenubar不在公共静态空main(String[] args)中

要使JFrame和JMenuBar不在公共静态空main(String[] args)中,可以通过以下步骤实现:

  1. 创建一个新的类,例如MainApp,作为程序的入口点。
  2. 在MainApp类中创建一个公共静态空main(String[] args)方法,作为程序的启动方法。
  3. 在main方法中实例化JFrame和JMenuBar,并将它们添加到程序的界面中。
  4. 在JFrame中添加所需的组件和布局,并设置相关的属性和事件监听器。
  5. 在JMenuBar中添加所需的菜单和菜单项,并设置相关的动作监听器。
  6. 将MainApp类作为程序的入口点,通过调用main方法启动程序。

以下是一个示例代码,演示如何使JFrame和JMenuBar不在公共静态空main(String[] args)中:

代码语言:txt
复制
import javax.swing.*;

public class MainApp {
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            // 创建JFrame
            JFrame frame = new JFrame("My Application");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            
            // 创建JMenuBar
            JMenuBar menuBar = new JMenuBar();
            
            // 创建菜单
            JMenu fileMenu = new JMenu("File");
            
            // 创建菜单项
            JMenuItem openItem = new JMenuItem("Open");
            JMenuItem saveItem = new JMenuItem("Save");
            
            // 将菜单项添加到菜单中
            fileMenu.add(openItem);
            fileMenu.add(saveItem);
            
            // 将菜单添加到菜单栏中
            menuBar.add(fileMenu);
            
            // 将菜单栏设置到JFrame中
            frame.setJMenuBar(menuBar);
            
            // 添加其他组件和布局到JFrame中
            
            // 设置JFrame的大小和可见性
            frame.setSize(400, 300);
            frame.setVisible(true);
        });
    }
}

在这个示例中,我们使用SwingUtilities.invokeLater()方法来确保Swing组件在事件调度线程上创建和更新,以避免线程安全问题。在main方法中,我们实例化了JFrame和JMenuBar,并将它们添加到程序的界面中。然后,我们可以根据需要添加其他组件和布局,并设置相关的属性和事件监听器。最后,我们设置JFrame的大小和可见性,使程序界面显示出来。

请注意,这只是一个示例代码,你可以根据自己的需求进行修改和扩展。另外,腾讯云提供了一系列与云计算相关的产品,你可以根据具体的需求选择适合的产品进行开发和部署。具体的产品介绍和相关链接地址可以在腾讯云官方网站上找到。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

java swing开发窗体程序开发(一)GUI编程

C#的开发效率更高 以下讲解Java swing的开发 (一)第一个java swing程序 public static void main(String[] args) {...运行的效果如下 (二)带有菜单栏,菜单条,子菜单的窗体程序 首先要知道几个常见类函数 JMenuBar:代表菜单条,他需要被设置给JFrame窗体 JMenu:代表菜单,他需要被放在菜单条...的类JFrame叫做底层容器,然而在实际开发为了更好的使用【例如实现同一个窗口切换选项卡有不同的面板】 这些组件并不是直接添加在底层容器。...使用add(String text,Component c);//这个函数来指定选项卡名字组件之间的对应关系 选项卡的位置在构造JTabbedPane对象时可以指定,其构造函数参数为int类型,实际是一个静态常量...public static void main(String[] args) { MixedForm form=new MixedForm();

2.5K30

Java笔试真题及参考答案

窗口标题为“GUI程序”,大小为400X300, 居中显示:窗口上有一个面板,面板背景色为灰色; (2)面板上有一个标签,内容为“河南城建学院”,字体为“隶书”,字号“20”:菜单栏上有两个菜单“字体”“...退出”, 菜单“字体”中有菜单项“宋体”“楷体”, 菜单“退出”中有菜单项“关闭”; (3)当点击菜单项“宋体”时,标签内容“河南城建学院”显示宋体样式:点击菜单项“楷体”时,标签内容“河南城建学院”...java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class GuiDemo { public static void main...(String[] args) { // 创建 "GUI程序" 窗口 JFrame frame = new JFrame("GUI程序"); // 设置窗口大小...menuBar = new JMenuBar(); frame.setJMenuBar(menuBar); // 创建 "字体" 菜单 JMenu menuFont

53640

Java---基于TCP协议的相互即时通讯小程序

1)界面显示,2)通知其他用户关于你登录的信息, 3)把其他在线用户的userName通知当前用户 4)开启一个线程专门为当前线程服务 (2)退出(注销): (3)发送消息 ※※发送通讯内容之后,对方如何知道是干什么...通知当前登录的用户,有关其他在线人的信息 * * @param socketClient */ // 把原先已经在线的那些用户的名字发给该登录用户,让他给自己界面的...(String[] args) { JFrame.setDefaultLookAndFeelDecorated(true);// 设置装饰 new ServerForm(...tfdUserName.getText(); pw.println(msg); pw.flush(); // 将发送消息的文本设为...(String[] args) { JFrame.setDefaultLookAndFeelDecorated(true);// 设置装饰 new ClientForm(

1.6K10

手把手教你用Java打造一款简单故事书(上篇)

(一)首先实现窗体界面 public static void main(String[] args)throws IOException { // TODO Auto-generated method...(二)实现菜单栏 1.实现菜单栏步骤: (1)创建JFrame实例、JPanel面板,然后把面板添加到JFrame。...(2)创建JMenuBar菜单栏对象,JMenu在创建菜单对象,将菜单对象添加到菜单栏对象。 (3)将JMenuItem菜单项添加到JMenu。...static String[] str=new String[3]; (4)面板一实现上下页按钮布局 private JPanel panel01=new JPanel(); private JPanel...以上将字号、字体、字形、颜色、设置添加到JMenuBar菜单栏,字体里面的菜单项如黑体、宋体添加到菜单。其他字号、字形、颜色、设置添加组件也一样!

83720

JAVA写文本编辑器(一)

其中的难点主要在打开保存文件上,为什么呢。因为我们点开打开保存两个按钮,都会跳出一个文件选择的Dialog。...画主窗口,并把菜单栏按照各自的关系建好:这里用到JMenuBar,JMenu、JMenuItem。顾名思义一个是菜单栏,一个是菜单,一个事菜单项。...下面看代码: public class test5 extends JFrame{ private JMenuBar menuBar; //菜单栏 private JMenu menu_File...(String[] args) { test5 t5 = new test5(); } } 接下来就是菜单栏下面的文本编辑区域了,这里只需要用一个JTextArea就可以了...(String[] args) { test5 t5 = new test5(); } } 为了节省篇幅,我就把重复出现的代码删除用…代替了,相信没有影响大家的观看效果。

79610

使用Java带你打造一款简单的英语学习系统

【四、实现步骤】 一、首先实现窗体界面 具体的代码实现过程如下: public static void main(String[] args){ // TODO Auto-generated...创建JFrame实例、JPanel面板,然后把面板添加到JFrame。 2. 创建JMenuBar菜单栏对象,JMenu在创建菜单对象,将菜单对象添加到菜单栏对象。 3....JMenuBar jb = new JMenuBar(); private JMenu menu01 = new JMenu("字体"); private JMenuItem item01 =...将字体、颜色、背景添加到JMenuBar菜单栏,字体里面的菜单项如黑体、宋体添加到菜单。其他颜色、背景添加组件也一样!...程序显示文字是以String数组形式存储,这种方式比较方便易懂,但却使得代码较多。因此,在文字较多情况下,应考虑以txt文档形式存储故事文字,在程序读取文档内容,以显示在窗口中。

76810

漫谈可视化Prefuse(三)---Prefuse API数据结构阅读有感

该包主要介绍了列属性可以有不同类型的列值,如BooleanColumn、DateColumn表示列存储布尔类型日期类型的值。...prefuse.data.expression.parser(表达式解析)   该包包含如何解析表达式Expression的类。   ...但是为了提高用户可操作性,也为了熟悉Java图形编程如何进行界面之间的传值,对上面文章的例子进行了改进,将部分参数如端口号、数据库用户名、密码等信息开放给用户填写,提高程序的可操作性灵活性,后期实际开发还会能够让用户在多数据库之间切换...我的界面传值思路:首先创建一个接收读取数据的对象config,在填写参数的界面画出文本框供用户填写参数,在完成按钮添加监听事件,将所填信息赋给对象config,并执行在父界面画出读取数据构成的图形...* @throws DataIOException */ public static void main(String[] args) throws DataIOException

1.2K100
领券