Hi I'm a final year engineering student, and though I have learnt java, my knowledge in its application is rudimentary. However, I have to use java for my project. This is the front end code which I've written:
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.util.*;
public class ex extends Applet
{
static Frame f;
DrawCanvas can;
SetControls cont;
public void init()
{
can=new DrawCanvas();
setLayout(new BorderLayout());
add("Center", can);
add("North", cont = new SetControls(can, f));
}
public void destroy()
{
remove(cont);
remove(can);
}
public void start()
{
cont.setEnabled(true);
}
public void stop()
{
cont.setEnabled(false);
}
public void processWindowEvent(AWTEvent e)
{
if (e.getID() == Event.WINDOW_DESTROY)
{
System.exit(0);
}
}
public static void main(String args[])
{
f = new Frame("Title");
ex fe = new ex();
fe.init();
fe.start();
f.add("Center", fe);
f.setSize(1500,1500);
f.show();
}
}
class DrawCanvas extends Canvas
{
//declaration of variables
public DrawCanvas()
{
}
public void paint(Graphics g)
{
//various flags are set for functions to be called and what shud
//be drawn when those functions are called
}
}
class SetControls extends Panel implements ActionListener
{
TextArea text1;
TextField txt;
Button load, init1, cluster,exit;
Label head, vig;
//declaration of variables used
FileDialog fc;
String fname;
Frame f;
DrawCanvas canvas;
public SetControls(DrawCanvas can, Frame f)
{
//initialization of variables used
canvas = can;
this.f = f;
head = new Label("Clustering of Genes:");
cluster = new Button("Cluster Now");
load = new Button("Load");
init1 = new Button("Filter");
exit = new Button("Exit");
txt = new TextField(2);
text1 = new TextArea(5,80);
vig = new Label("Parameter");
load.addActionListener(this);
init1.addActionListener(this);
txt.addActionListener(this);
cluster.addActionListener(this);
exit.addActionListener(this);
add(head);
add(load);
add(init1);
add(text1);
add(vig);
add(txt);
add(cluster);
add(exit);
}
public void actionPerformed(ActionEvent ae)
{
String str = ae.getActionCommand();
System.out.println("Command: " + str);
if(str.equals("Load"))
{
text1.setText("Loading microarray data file...");
fc = new FileDialog(f, "Choose a file", FileDialog.LOAD);
fc.setDirectory(".");
fc.setVisible(true);
fname = fc.getFile();
//function call to read the file
text1.setText("Input Data File Loaded: " + fname);
}
else if((str.equals("Filter")||str.equals("Cluster Now")))
{
if(str.equals("Filter"))
{
//function calls and setting of text are
}
else
{
//function calls and setting of text area
}
}
else{
//call close function when exit is pressed
}
}
}
I know you're thinking why did I use AWT instead of swing but at the moment I am more comfortable with AWT. So far, the code is working great. But the problem is, when I press one of the buttons, the information that displays is a lot and goes beyond the frame; so I want to add a scrollbar or a scrollpane so that I can, well, scroll down to see the rest of the info. I hav tried a lot of things like f.add(new ScrollPane()) etc but none of them are working. Please help me!