Hey guys, I'm creating a Text to HTML generator, but before I get too deep into it, I want the layout sorted. But I have no idea on what layout to use on this. What would you suggest? I want the JTextArea for Basic to be on it's own row, then buttons all on the same, below it. Then for the advanced, I want a JLabel & JTextField pair on the same row, then JTextArea by itself, then all buttons on the same row.
One last question, would I be able to use just 3 buttons for both tabs? Or would I need to make new ones for ActionListener purposes?
One last question, would I be able to use just 3 buttons for both tabs? Or would I need to make new ones for ActionListener purposes?
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Main1 {
final static String BUTTONPANEL = "Basic";
final static String TEXTPANEL = "Advanced";
JButton gen = new JButton("Generate");
JButton clear = new JButton("Clear");
JButton exit = new JButton("Exit");
JTextArea text = new JTextArea(20, 40);
JTextArea advText = new JTextArea(20, 40);
JTextField header = new JTextField(20);
JTextField footer = new JTextField(20);
public void addComponentToPane(Container pane) {
JTabbedPane tabbedPane = new JTabbedPane();
JPanel basic = new JPanel();
basic.add(text);
basic.add(gen);
gen.addActionListener(new GenerateListener());
basic.add(clear);
clear.addActionListener(new ClearListener());
basic.add(exit);
exit.addActionListener(new ExitListener());
JPanel adv = new JPanel();
adv.add(header);
adv.add(footer);
adv.add(advText);
tabbedPane.addTab(BUTTONPANEL, basic);
tabbedPane.addTab(TEXTPANEL, adv);
pane.add(tabbedPane, BorderLayout.CENTER);
}
private static void createAndShowGUI() {
JFrame frame = new JFrame("Text to HTML Generater");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Main1 html = new Main1();
html.addComponentToPane(frame.getContentPane());
frame.pack();
frame.setVisible(true);
}
private class GenerateListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
// Generate .html file.
}
}
private class ClearListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
// Clear text area.
}
}
private class ExitListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}