Article View: aus.computers.java
Article #1273text editor in java
From: Vegard K�sa
Date: Mon, 01 Mar 1999 00:00
Date: Mon, 01 Mar 1999 00:00
123 lines
3118 bytes
3118 bytes
Hi,
I'm making a simple text editor and have run into some problems.
When I try to catch the events generated from a MenuItem, I don't seem to
have access to my global variables. I keep getting the message: Undefined
variable: quitItem;
Can anyone see what I'm doing wrong?
my email is: vkaasa@c2i.net
thanks,
Vegard
here's the code:
import java.awt.Panel;
import java.awt.TextArea;
import java.awt.Frame;
import java.awt.Color;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.*;
public class TextEditor extends Frame {
private Panel p1;
private TextArea ta;
private MenuBar bar;
private Menu fileMenu, editMenu;
public static MenuItem newItem, openItem, saveItem, saveAsItem, quitItem;
private MenuItemListener menuItemListener = new MenuItemListener();
public static void main (String [] args) {
TextEditor TextEdit = new TextEditor("Java Text Editor");
TextEdit.init();
TextEdit.setVisible(true);
}//main ends
//constructor
public TextEditor(String title){
super(title);
bar = new MenuBar();
fileMenu = new Menu("File", true);
fileMenu.add(newItem = new MenuItem("New..."));
fileMenu.add(openItem = new MenuItem("Open..."));
fileMenu.add(saveItem = new MenuItem("Save..."));
fileMenu.add(saveAsItem = new MenuItem("Save As..."));
fileMenu.addSeparator();
fileMenu.add(quitItem = new MenuItem("Quit"));
bar.add(fileMenu);
newItem.addActionListener(menuItemListener);
openItem.addActionListener(menuItemListener);
saveItem.addActionListener(menuItemListener);
saveAsItem.addActionListener(menuItemListener);
quitItem.addActionListener(menuItemListener);
}//constructor ends
public void init(){
setBackground(new Color(250,235,215));
p1 = new Panel();
add(p1);
ta = new TextArea("Welcome to TextEditor. Written in 100% pure Java.");
ta.setBackground(Color.white);
p1.add(ta);
bar.add(fileMenu);
editMenu = new Menu("Edit");
editMenu.add("Undo");
editMenu.add("Select all");
editMenu.add("Set Font");
editMenu.add("Set Font Color");
bar.add(editMenu);
setMenuBar(bar);//sets the menubar for the frame
pack();
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent event){
System.exit(0);
}
});
}//init ends
}//class ends
class MenuItemListener implements ActionListener {
public void actionPerformed (ActionEvent e){
MenuItem item = (MenuItem) e.getSource();
System.out.println(item.getLabel());
if ( item == newItem){
System.out.println(item.getLabel());
}
if ( item == quitItem){
System.exit(0);
}
}
}//class MenuItemListener ends
Technical Details
Message-ID:
<7beshp$3k2$1@romeo.dax.net>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 10d6db,55549d549b699206,start X-Google-Attributes: gid10d6db,public From: "Vegard K�sa" <vkaasa@c2i.net> Subject: text editor in java Date: 1999/03/01 Message-ID: <7beshp$3k2$1@romeo.dax.net> X-Deja-AN: 450081461 X-Priority: 3 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.0810.800 Organization: Tele2 Norway Public Access X-MSMail-Priority: Normal Newsgroups: aus.computers.java