`
blues1021
  • 浏览: 141421 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

JScrollPane和JTextArea,JMenuBar、JMenu和JMenuItem之间的组合关系

 
阅读更多

package menuta;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import ioutil.*;
public class DemoMenusAndTextAreas extends JFrame{
      //////////////////////////////////////////////////////// main
    public static void main(String[] args){
      JFrame theFrame = new DemoMenusAndTextAreas();
      theFrame.setSize(350, 250);
      theFrame.setVisible(true);         
   }
    //////////////////////////////////////////////////////// Model
    // none
//////////////////////////////////////////////////////// View
// Create controls
   private JTextArea taDisplay     = new JTextArea("Greetings!\n");
   
   private JMenu     muFile        = new JMenu("File");      
   private JMenuItem miFileNew     = new JMenuItem("New");
   
   private JMenu     muEdit        = new JMenu("Edit");       
   private JMenuItem miEditAppend  = new JMenuItem("Append");
   private JMenuItem miEditReplace = new JMenuItem("Replace");
  public DemoMenusAndTextAreas(){
    // Set title
      setTitle("Menus and TextArea Demo");
      // Create container and layout
      Container contentPane = getContentPane();
      EasyGridLayout layout = new EasyGridLayout();
      contentPane.setLayout (layout);
  // Set constraints and add controls to container
      JScrollPane spDisplay = new JScrollPane(taDisplay);
      layout.setConstraints(spDisplay  , 1,1,1,1);
      contentPane.add(spDisplay);
 //
1.组合关系,JScrollPane组件的使用,add其它组件后,使它成为JScrollPane的属性,所以容器添加JScrollPane对象即可。
   // Create the menu bar and add menus and menu items
      JMenuBar menuBar = new JMenuBar();
     this.setJMenuBar(menuBar);/
/this是theFrame对象,和contentPane是有区别的。
      menuBar.add(muFile);
      menuBar.add(muEdit);
      muFile.add(miFileNew);
//2.组合关系,将JMenu作为JmenuBar的属性,然后将JMenuItem作为JMenu的属性,能够使得JMenuItem作为MenuBar的属性。
      muEdit.add(miEditAppend);
      muEdit.add(miEditReplace);

      // Specify listeners
      miFileNew.addActionListener(new FileNewListener());
      miEditAppend.addActionListener(new EditAppendListener());
      miEditReplace.addActionListener(new EditReplaceListener());
      this.addWindowListener(new MyWindowAdapter());   
   }
     //////////////////////////////////////////////////////// Controller
// File-new listener
   private class FileNewListener implements ActionListener{
      public void actionPerformed(ActionEvent e){
         taDisplay.setText("");//
新建文件是利用JComponentText对象setText(" ")空,或实现replace文件内容的功能。
      }
   }
 // Edit-append listener
   private class EditAppendListener implements ActionListener{
      public void actionPerformed(ActionEvent e){
         taDisplay.append("Appending one more line.\n");//
利用JTextArea的append方法实现后面添加。
      }
   }
 // Edit-modify listener
   private class EditReplaceListener implements ActionListener{
      public void actionPerformed(ActionEvent e){
         taDisplay.setText("Setting a new line of text.\n");//setText覆盖。
      }
   }
    // Window listener
   private class MyWindowAdapter extends WindowAdapter{
      public void windowClosing (WindowEvent e){
         System.exit(0);
      }
   }
}

分享到:
评论

相关推荐

    java记事本代码

    2. 在JSB类的构造函数中,应用程序初始化了JMenuBar、JMenu、JMenuItem、JTextArea和JScrollPane等组件。 3. 应用程序使用了Java的文件输入/输出API来读取和写入文件。 4. 应用程序使用了Java的字体设置API来设置...

    【IT十八掌徐培成】Java基础第17天-03.GUI编程-滚动面板-菜单.zip

    Java Swing提供了JMenuBar、JMenu和.JMenuItem等类来构建菜单系统。JMenuBar通常位于窗口的顶部,用来容纳多个JMenu。JMenu则包含了各种操作选项,即JMenuItem。每个JMenuItem都可以关联一个Action,当用户点击该...

    Expression:Java 中的字处理器

    Expression 专注于令人愉悦的图形设计和有效的代码,以实现快速易用的文字处理器。 尝试在eclipse中上传以下代码。 是你想的那样吗?? 导入 java.awt。 ; 导入 javax.swing。 ;; 公共类 TextDemo { JTextArea ...

    北大青鸟培训java课件 连载第11章之13

    在Swing中,菜单相关的类主要位于javax.swing包下,如JMenuBar、JMenu、JMenuItem等。JMenuBar是放置在窗口顶部的菜单栏,JMenu代表菜单本身,而JMenuItem是菜单上的每个选项。当用户点击JMenuItem时,会触发...

    改变JTextArea指定位置的背景色

    - `JMenuBar`、`JMenu`、`JMenuItem`: 构建菜单栏及其下拉菜单。 - `ActionListener`: 处理菜单项点击事件。 - `Color`: Java内置的颜色类。 #### 2.2 实现方案 - 创建一个继承自`JFrame`的类`Menueg`,并初始化主...

    swing写的文本编辑器

    在Swing中,主要使用`javax.swing.*`包下的类来构建GUI,例如`JFrame`作为窗口的基础,`JPanel`用于组织组件,`JTextArea`用于显示和编辑文本,`JMenuBar`和`JMenu`用于创建菜单栏和子菜单,` JMenuItem`则表示菜单...

    JAVA记事本 JAVA记事本 JAVA记事本

    通过`javax.swing.*`导入,我们可以使用JFrame、JButton、JTextArea、JMenuBar、JMenu、.JMenuItem等类来构建记事本的基本结构。 1. **创建主窗口**: 使用JFrame作为应用程序的主窗口,设置窗口的大小、位置和...

    基于java的记事本

    3. 实现自动换行和滚动条,JTextArea的`setLineWrap()`和`setWrapStyleWord()`方法可以实现自动换行,JScrollPane用于添加滚动功能。 总结,开发一个基于Java的记事本不仅能让初学者熟悉Java GUI编程,还能掌握文本...

    练习50写字板(二).doc

    3. 使用`JMenuBar`, `JMenu`, 和 `JMenuItem`制作菜单栏和菜单项: 这些类用于构建图形用户界面中的菜单系统。例如,`JMenu file = new JMenu("文件");`创建了名为“文件”的菜单,而`file.add(jmi = new JMenuItem...

    java编写的类似文本编辑器的代码

    JMenuBar menuBar1=new JMenuBar(); JMenu fileMenu=new JMenu("File"); JMenu editMenu=new JMenu("Edit"); JMenu optionMenu=new JMenu("Option"); JMenu advanceMenu=new JMenu("Advance"); JMenu helpMenu...

    简单的记事本程序,实现了基本功能

    通过使用`JFrame`、`JPanel`、`JTextArea`等组件构建用户界面,并利用`JMenuBar`、`JMenu`、`JMenuItem`等组件来设计菜单栏及菜单项,结合文件读写操作以及焦点监听等技术,为用户提供了一个简洁实用的文本编辑工具...

    难得一见的java Swing 源代码示例,非常好

    10. **菜单和菜单项**: JMenuBar、JMenu和.JMenuItem可以创建菜单栏、子菜单和菜单项,提供用户操作的入口。 11. ** NimbusLookAndFeel**: Swing 提供了几种内置的外观和感觉(LookAndFeel),Nimbus是其中的一种,...

    Java程序设计实验报告-JAVA记事本.pdf

    这涉及JMenuBar、JMenu和.JMenuItem类的使用。 6. **文本编辑区**:使用JTextArea组件创建文本编辑区域,允许用户输入和编辑文本。为了处理大量文本,可能还使用了JScrollPane来提供滚动功能。 7. **工具栏设计**...

    JAVA图形设计—swing包程序例子

    5. **菜单和工具栏(Menus and Toolbars)**:如何创建JMenuBar、JMenu和 JMenuItem,以及添加快捷键和工具栏按钮。 6. **可定制外观**:Swing 允许更改组件的Look and Feel,可以是Java自带的,也可以是第三方的,...

    Java图形设计卷2Swing.rar

    4. **菜单和对话框**:介绍JMenuBar、JMenu、 JMenuItem以及JOptionPane等,用于创建应用程序的主菜单和各种对话框。 5. **模型-视图-控制器模式**(MVC):Swing遵循MVC设计模式,使得代码结构清晰,易于维护和...

    JAVA课程设计 - 文本编辑器.doc

    - 菜单设计:利用JMenuBar、JMenu、JMenuItem等组件构建菜单结构,设置快捷键,并添加ActionListener以响应用户操作。 5. 事件响应代码: - 对于每个菜单项,如“新建”、“打开”等,都需要编写对应的事件处理...

    swing 小案例

    9. **菜单和菜单项**:JMenuBar、JMenu和 JMenuItem允许你创建具有下拉菜单的菜单系统,这对于桌面应用程序来说非常常见。 10. **Swing的外观和感觉**:Swing支持不同的Look and Feel(LAF),可以改变应用程序的...

    Java swing 完全完整实例

    9. **菜单系统(Menus)**:JMenuBar、JMenu和.JMenuItem类用于创建下拉菜单和子菜单,它们是桌面应用程序中常见的交互元素。 10. **拖放支持(Drag and Drop)**:Swing提供了拖放功能,允许用户通过鼠标操作在...

    Java.Swing图形界面开发与案例详解.王鹏等——第1章和第2章

    1. **菜单和工具栏**:JMenuBar、JMenu、.JMenuItem等,用于创建程序的菜单系统和工具栏,提供更多的用户交互方式。 2. **对话框**:JOptionPane用于创建简单的对话框,而JDialog则允许创建自定义的对话框,如文件...

    精通JAVASwing程序设计

    5. **菜单和工具栏**:创建JMenuBar、JMenu和 JMenuItem,为应用添加菜单系统和工具栏,使用户能轻松访问功能。 6. **模型-视图-控制器模式(MVC)**:了解Swing如何应用MVC模式,使代码结构清晰,易于维护。 7. *...

Global site tag (gtag.js) - Google Analytics