If your class extends JFrame, use this.setTitle(newTitle.getText());
If not, and it contains a JFrame, say the name myFrame, use myFrame.setTitle(newTitle.getText());
Now that you have placed your program, it is obvious that you only need one JTextField to get a new header. These changes will do the trick:
JTextField poolLengthText, poolWidthText, poolDepthText, poolVolumeText, hotTub, hotTubLengthText, hotTubWidthText, hotTubDepthText, hotTubVolumeText, temp, results, newTitle;
and:
public void createOptions() { options = new JPanel(); options.setLayout(null); JLabel labelOptions = new JLabel("Change Company Name:"); labelOptions.setBounds(120, 10, 150, 20); options.add(labelOptions); newTitle = new JTextField("Some Title"); newTitle.setBounds(80, 40, 225, 20); options.add(newTitle); // myTitle = new JTextField("My Title..."); // myTitle.setBounds(80, 40, 225, 20); // myTitle.add(labelOptions); JButton newName = new JButton("Set New Name"); newName.setBounds(60, 80, 150, 20); newName.addActionListener(this); options.add(newName); JButton Exit = new JButton("Exit"); Exit.setBounds(250, 80, 80, 20); Exit.addActionListener(this); options.add(Exit); }
and
private void New_Name() { this.setTitle(newTitle.getText()); }
Costis aivalis
source share