⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ganttsaveaspreviousstatebean.java

📁 It is all about project scheduling. GanttProject is a tool for creating a project schedule by means
💻 JAVA
字号:
/** *  */package net.sourceforge.ganttproject.gui.previousState;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.ActionListener;import java.util.ArrayList;import javax.swing.Box;import javax.swing.JButton;import javax.swing.JComboBox;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.border.EtchedBorder;import javax.swing.border.TitledBorder;import net.sourceforge.ganttproject.GanttPreviousState;import net.sourceforge.ganttproject.GanttProject;import net.sourceforge.ganttproject.language.GanttLanguage;/** * @author nbohn *  */public class GanttSaveAsPreviousStateBean extends JPanel {    private JPanel generalPanel, southPanel;    private JButton okButton, cancelButton;    private JTextField nameTextField;    private JLabel previousStateLabel;    private JComboBox nameComboBox;    private ArrayList myPreviousStates;    private GanttLanguage lang = GanttLanguage.getInstance();    private static String defaultName = GanttLanguage.getInstance().getText(            "save");    private static int count = 1;    public GanttSaveAsPreviousStateBean(GanttProject project) {        myPreviousStates = project.getPreviouStates();        if (myPreviousStates.size() == 0) {            defaultName = GanttLanguage.getInstance().getText("save");            count = 1;        }        init();    }    public void init() {        setLayout(new BorderLayout());        add(constructNamePanel(), BorderLayout.CENTER);        add(constructSouthPanel(), BorderLayout.SOUTH);        nameTextField.requestFocusInWindow();    }    /** Construct the south panel */    private JPanel constructSouthPanel() {        okButton = new JButton(lang.getText("ok"));        okButton.setName("ok");        if (getRootPane() != null)            getRootPane().setDefaultButton(okButton); // set ok the defuault        // button when press        // "enter" --> check        // because        // getRootPane()==null        // !!!        cancelButton = new JButton(lang.getText("cancel"));        cancelButton.setName("cancel");        southPanel = new JPanel(new FlowLayout(FlowLayout.TRAILING, 10, 10));        southPanel.add(okButton);        southPanel.add(cancelButton);        return southPanel;    }    private Box constructNamePanel() {        Box box = Box.createVerticalBox();        JPanel previousStatePanel;        nameComboBox = new JComboBox();        if (myPreviousStates.size() != 0) {            previousStatePanel = new JPanel(new FlowLayout(FlowLayout.TRAILING,                    30, 20));            previousStateLabel = new JLabel(lang.getText("previousStates"));            for (int i = 0; i < myPreviousStates.size(); i++)                nameComboBox.addItem(((GanttPreviousState) myPreviousStates                        .get(i)).getName());            nameComboBox.setName("nameComboBox");            nameComboBox.setSelectedIndex(-1);            previousStatePanel.add(previousStateLabel);            previousStatePanel.add(nameComboBox);            box.add(previousStatePanel);        }        nameTextField = new JTextField(20);        nameTextField.setText(defaultName + "_" + count);        nameTextField.selectAll();        JPanel namePanel = new JPanel(new FlowLayout(FlowLayout.TRAILING, 30,                20));        namePanel.add(nameTextField);        box.add(namePanel);        box                .setBorder(new TitledBorder(new EtchedBorder(), lang                        .getText("name")));        return box;    }    public String getName() {        return nameTextField.getText();    }    public void addActionListener(ActionListener l) {        okButton.addActionListener(l);        cancelButton.addActionListener(l);        nameComboBox.addActionListener(l);    }    public JTextField getTextField() {        return nameTextField;    }    public void setDefaultName() {        if (!nameTextField.getText().equals(defaultName + "_" + count)) {            defaultName = nameTextField.getText();            count = 0;        }        count++;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -