JavaAWT向现有框架添加元素
我想在现有框架中添加一个按钮和一个文本字段。 我想隐藏TextArea,然后在上面添加它们,但我失败得很惨。第112-117行,任何帮助都将不胜感激(我知道AWT正在被弃用…)JavaAWT向现有框架添加元素,java,awt,element,Java,Awt,Element,我想在现有框架中添加一个按钮和一个文本字段。 我想隐藏TextArea,然后在上面添加它们,但我失败得很惨。第112-117行,任何帮助都将不胜感激(我知道AWT正在被弃用…) 添加新组件后,必须验证框架 class EditHandler implements ActionListener{ ... public void actionPerformed(ActionEvent ae){ ... notepad.add(find_field);
添加新组件后,必须验证框架
class EditHandler implements ActionListener{
...
public void actionPerformed(ActionEvent ae){
...
notepad.add(find_field);
notepad.add(find);
notepad.validate(); // forces the Frame to refresh with new Elements
在一个面板中对一组新组件求和总是一个好主意。这样就更容易把它放在某个地方。我想你想做的是这样的:
Panel findPanel = new Panel();
TextField find_field = new TextField();
find_field.setPreferredSize(new Dimension(150,25));
Button find = new Button("Find");
findPanel.add(find_field);
findPanel.add(find);
notepad.add(findPanel, BorderLayout.EAST);
notepad.validate();
你知道有什么方法可以把这两个元素一个显示在另一个之外吗?我只能看到“查找”按钮。我应该使用其中一种布局还是必须手动执行?更新了我的答案。希望有帮助。您应该尝试学习一些关于布局的知识;)
Panel findPanel = new Panel();
TextField find_field = new TextField();
find_field.setPreferredSize(new Dimension(150,25));
Button find = new Button("Find");
findPanel.add(find_field);
findPanel.add(find);
notepad.add(findPanel, BorderLayout.EAST);
notepad.validate();